Prep the cauliflower: Cut the head into small, bite-size florets.
The smaller the pieces, the faster they cook and the more they absorb flavor. Rinse and pat dry.
Heat the skillet: Set a large, wide skillet over medium-high heat. Add 1 tablespoon of olive oil.
When it shimmers, add the ground beef, breaking it up with a spatula. Season with a pinch of salt and pepper.
Brown the beef: Cook 4–6 minutes until the beef is no longer pink and develops some browned bits. If there’s excess fat, spoon off most of it, leaving about a tablespoon for flavor.
Sauté the aromatics: Push the beef to the edges.
Add the remaining 1 tablespoon of olive oil to the center, then the onion and bell pepper. Cook 3–4 minutes, stirring occasionally, until softened. Add the garlic and cook 30 seconds, just until fragrant.
Spice it up: Sprinkle in smoked paprika, cumin, oregano, and red pepper flakes if using.
Stir to coat the beef and veggies, letting the spices toast for about 30 seconds to wake them up.
Add tomatoes and paste: Stir in the tomato paste, then the drained diced tomatoes. Mix well so the paste dissolves and lightly coats everything.
Bring in the cauliflower: Add the florets and toss to combine. Pour in the broth, then season generously with salt and pepper.
You want enough liquid to create steam and soften the cauliflower without turning the skillet soupy.
Simmer and steam: Reduce heat to medium. Cover and cook 7–10 minutes, stirring once or twice, until the cauliflower is tender but not mushy. If the pan looks dry before it’s done, splash in a bit more broth or water.
Finish and thicken: Remove the lid.
Let it cook another 2–3 minutes to reduce excess moisture. Taste and adjust salt, pepper, or spices. Stir in chopped parsley or cilantro.
Optional cheesy top: Sprinkle cheese over the skillet, cover for 1–2 minutes to melt.
A squeeze of lemon at the end brightens everything.
Serve: Spoon into bowls. It’s great on its own or over rice, cauliflower rice, quinoa, or tucked into warm tortillas.