Quick Recipe Version (TL;DR)
Quick Ingredients
- 700 g (about 1.5 lb / 4 cups) leftover cooked potatoes, roughly mashed or chopped
- 300 g (about 3 cups) cooked or raw green cabbage, finely shredded
- 1 small onion, finely chopped
- 2 tbsp unsalted butter
- 2 tbsp neutral oil (sunflower, canola, or vegetable)
- 1 tsp Dijon mustard (optional but recommended)
- 1 tsp Worcestershire sauce (optional)
- 1/2 tsp fine sea salt, plus more to taste
- 1/2 tsp freshly ground black pepper
- 2 tbsp chopped fresh parsley or chives (optional)
Do This
- 1. If using raw cabbage, sauté it with a little oil and a pinch of salt over medium heat for 5–7 minutes until softened; set aside.
- 2. In a large bowl, combine potatoes, cabbage, onion, mustard, Worcestershire, salt, pepper, and herbs; mix just until everything is evenly distributed.
- 3. Heat a large heavy skillet (preferably cast iron, 26–28 cm / 10–11 inch) over medium heat; add butter and oil.
- 4. Tip the mixture into the pan and press it firmly into an even, compact cake about 2–3 cm (1 inch) thick.
- 5. Cook on medium to medium-low heat, undisturbed, for 8–12 minutes until the underside is deeply golden and crisp at the edges.
- 6. Slide onto a plate, then invert back into the pan to brown the second side for another 8–10 minutes.
- 7. Taste for seasoning, sprinkle with extra herbs, slice into wedges, and serve hot with eggs, sausages, or leftover roast meat.
Why You’ll Love This Recipe
- Transforms humble leftovers into a golden, crisp-edged, deeply comforting one-pan dish.
- Uses simple, inexpensive ingredients you probably already have in the fridge.
- Flexible and forgiving: perfect with mashed, boiled, or roasted potatoes and almost any cabbage or greens.
- Wonderful any time of day, from a hearty breakfast with eggs to an easy dinner alongside sausages or roast meat.
Grocery List
- Produce: Potatoes (if you do not already have leftovers), green cabbage, onion, fresh parsley or chives (optional), garlic (optional).
- Dairy: Unsalted butter.
- Pantry: Neutral cooking oil (sunflower, canola, or vegetable), Dijon mustard, Worcestershire sauce, fine sea salt, black pepper.
Full Ingredients
Main Bubble and Squeak
- 700 g leftover cooked potatoes (about 1.5 lb or 4 firmly packed cups), roughly mashed or chopped
- Boiled, steamed, or roasted potatoes all work; avoid heavily sauced potatoes.
- 300 g green cabbage (about 3 cups when finely shredded)
- You can use cooked leftover cabbage or start with raw cabbage.
- 1 small onion, finely chopped (about 80 g / 1/2 cup)
- 1 small garlic clove, finely minced (optional)
- 2 tbsp unsalted butter
- 2 tbsp neutral oil (such as sunflower, canola, or vegetable oil)
- 1 tsp Dijon mustard (optional but adds great depth)
- 1 tsp Worcestershire sauce (optional, for savory richness)
- 1/2 tsp fine sea salt, plus more to taste
- 1/2 tsp freshly ground black pepper, plus more to taste
- 2 tbsp chopped fresh parsley or chives (optional, for freshness)
If Starting from Raw Potatoes (Optional)
- 700 g floury potatoes (such as Maris Piper, Russet, or Yukon Gold)
- 1 tsp fine sea salt (for boiling water)

Step-by-Step Instructions
Step 1: Cook the Potatoes if You Do Not Have Leftovers
If you already have leftover cooked potatoes, skip to Step 2. To cook them from scratch, peel (optional) and cut 700 g potatoes into large chunks, about 4 cm (1.5 inches).
Place the potatoes in a large pot and cover with cold water by about 2.5 cm (1 inch). Add 1 teaspoon of salt. Bring to a boil over high heat, then reduce to a gentle simmer and cook for 15–18 minutes, until the potatoes are very tender when pierced with a knife.
Drain well in a colander and allow the potatoes to steam off for 5 minutes so excess moisture evaporates. Roughly mash or break them up with a fork; you want a few small chunks rather than a completely smooth mash. Let cool until just warm before using.
Step 2: Prepare and Soften the Cabbage
If using cooked leftover cabbage, simply chop it into bite-sized pieces if needed and set aside. If using raw cabbage, remove any tough outer leaves, then finely shred 300 g using a sharp knife.
Heat 1 teaspoon of the oil (from the total amount) in a large skillet over medium heat. Add the shredded cabbage and a small pinch of salt. Sauté for 5–7 minutes, stirring occasionally, until it softens and loses some of its raw bite. It should be flexible, lightly wilted, and slightly sweet but not fully browned. Transfer to a large mixing bowl and let cool slightly.
Step 3: Mix the Potato and Cabbage Filling
To the bowl with the cabbage, add the roughly mashed or chopped potatoes, the finely chopped onion, and the minced garlic if using. Spoon in the Dijon mustard and Worcestershire sauce. Sprinkle over 1/2 teaspoon salt and 1/2 teaspoon black pepper.
Using a large spoon or your hands, gently fold everything together until the mixture is evenly combined. You want the potatoes, cabbage, and onion to be well distributed, but avoid overworking it into a dense paste. If you are using fresh herbs, fold in the chopped parsley or chives at this stage. Taste a small bit and adjust the seasoning with a little more salt or pepper if needed.
Step 4: Preheat the Pan and Add Fat for Crisping
Choose a large, heavy-based frying pan or skillet, ideally 26–28 cm (10–11 inches) in diameter. Cast iron is perfect for achieving a deep, even crust. Place the pan over medium heat and let it warm for 1–2 minutes.
Add the 2 tablespoons of neutral oil and 2 tablespoons of butter. Allow the butter to melt and foam, swirling the pan so the fat lightly coats the entire surface. Once the foam subsides and you can smell a nutty aroma, the pan is ready. Reduce the heat slightly if the butter starts to brown quickly; you want a steady, moderate heat for an even crust without burning.
Step 5: Press the Mixture into a Compact Cake
Tip the potato and cabbage mixture into the hot pan. Use a spatula to spread it evenly, then firmly press it down to form a cake about 2–3 cm (around 1 inch) thick. Pack it tightly so it holds together and makes maximum contact with the pan; this contact is what creates those wonderfully crisp, browned edges.
Use the spatula to neaten the sides, gently tucking them in so the cake has clean edges and an even thickness. Smooth the top lightly, but do not worry if it looks a bit rustic; those uneven bits will brown in delicious, extra-crispy patches.
Step 6: Cook Slowly for a Deep, Golden Crust
Reduce the heat to medium or medium-low, depending on your stove. Cook the bubble and squeak undisturbed for 8–12 minutes. Resist the urge to move it around; steady contact with the pan is essential for a solid crust. You can occasionally peek at the edges by lifting gently with a spatula. You are looking for a deep golden-brown color with crisp, slightly frilly edges.
While the first side browns, you may hear gentle sizzling and popping sounds – this “bubbling and squeaking” is where the dish gets its name. If you notice any smell of burning before the crust is well formed, slightly lower the heat and give it more time.
Step 7: Flip and Brown the Second Side
Once the first side is deeply browned, you will flip the cake. The easiest way is to slide the entire cake onto a large plate: place the plate over the pan, hold it firmly, then quickly invert so the cake lands browned-side up on the plate.
Return the pan to the heat and add a small drizzle of extra oil or a tiny knob of butter if the surface looks dry. Slide the cake back into the pan, browned-side up, so the pale side is now in contact with the pan. Cook for a further 8–10 minutes over medium to medium-low heat, again without moving it, until the second side is also golden-brown and crisp and the center is piping hot.
Step 8: Serve Hot and Enjoy
When both sides are crisp and golden, remove the pan from the heat. If you like, sprinkle over a little extra chopped parsley or chives for freshness. Either slide the whole cake onto a serving board or plate and cut into thick wedges, or serve directly from the pan for a rustic, cozy feel.
Bubble and squeak is especially good with fried or poached eggs, grilled sausages, sliced leftover roast meat, or simply a spoonful of chutney or brown sauce. Serve immediately while the edges are still wonderfully crunchy and the center is soft and comforting.
Pro Tips
- Dry potatoes are best: Fluffy, well-drained potatoes crisp better than very creamy or milky mash. If your potatoes are wet, spread them on a tray and let them steam dry for a few minutes before mixing.
- Do not skimp on the pan size: A wide pan helps create a broad, thin cake with lots of crispy surface area. If your pan is small, cook in two smaller cakes instead of one thick one.
- Low and steady wins: Medium to medium-low heat allows a deep, even crust to form without burning. If it browns too fast, lower the heat and give it more time.
- Flip with confidence: Sliding onto a plate and inverting back into the pan is far easier than trying to flip in the air. Press the cake gently again after flipping to help the second side make good contact.
- Season at the end too: Potatoes soak up salt. Always taste a little edge piece and adjust with extra salt and pepper right before serving.
Variations
- Greens swap: Replace some or all of the cabbage with finely shredded Brussels sprouts, kale, or Savoy cabbage. Sauté them first just as you would the cabbage.
- Cheesy bubble and squeak: Before pressing the mixture into the pan, fold in 60 g (about 1/2 cup) grated sharp cheddar. You can also sprinkle a little extra cheese over the top during the last few minutes of cooking.
- Meaty version: Add 100–150 g chopped leftover roast beef, ham, bacon, or sausages to the mix. Brown any raw bacon or sausage first, then stir it through with the potatoes and cabbage.
Storage & Make-Ahead
Bubble and squeak keeps surprisingly well. Allow any leftovers to cool completely, then transfer to an airtight container. Refrigerate for up to 3 days. Reheat slices in a lightly oiled skillet over medium heat for 4–5 minutes per side until hot and re-crisped, or warm in a 180°C (350°F) oven for about 15 minutes. You can also assemble the uncooked mixture up to 24 hours in advance: mix the potatoes, cabbage, and seasonings, cover tightly, and refrigerate. When ready to eat, press into the hot, oiled pan and cook as directed, adding a couple of extra minutes to heat the chilled mixture through.
Nutrition (per serving)
Approximate values for 1 of 4 servings (without optional cheese or meat additions): about 280 kcal; 5 g protein; 28 g carbohydrates; 15 g fat; 4 g fiber; 400 mg sodium. Actual values will vary based on the exact potatoes used, level of seasoning, and any additions or toppings.

Leave a Reply