Prep the potatoes: Dice potatoes into small, even cubes (about 1/2 inch). Smaller pieces cook faster and brown better.
Brown the beef: Heat a large skillet over medium-high.
Add ground beef and cook, breaking it up, until browned and no longer pink, 5–7 minutes. Drain excess fat if needed, leaving about 1 tablespoon in the pan.
Sauté aromatics: Add onion (and bell pepper, if using). Cook 3–4 minutes until softened.
Stir in garlic and cook 30 seconds until fragrant.
Season: Add salt, pepper, paprika, and thyme. Stir well to coat the beef and veggies.
Add potatoes: Stir in diced potatoes. Drizzle in olive oil if the pan is dry.
Cook 4–5 minutes, letting the potatoes get some color.
Simmer: Stir in beef broth and tomato paste. Scrape up browned bits from the bottom. Reduce heat to medium, cover, and cook 10–15 minutes, stirring once or twice, until potatoes are tender.
Finish: Remove the lid.
If there’s excess liquid, let it simmer uncovered a few minutes to thicken. Taste and adjust seasoning.
Serve: Top with chopped parsley or green onions. Add shredded cheese, a dollop of sour cream, or a splash of hot sauce if you like.