Prep the produce: Peel and dice the sweet potatoes into even 1/2-inch cubes so they cook at the same rate. Dice the onion and bell pepper, and mince the garlic.
Start the sweet potatoes: Heat 1 tablespoon oil in a large skillet over medium heat. Add the sweet potatoes and a pinch of salt.
Cook, stirring every few minutes, until lightly browned, about 6–8 minutes.
Steam to soften: Add 2–3 tablespoons broth or water, cover, and let the sweet potatoes steam for 4–6 minutes until just tender. Remove the lid and let any liquid evaporate. Transfer to a plate and set aside.
Brown the beef: Add the remaining oil to the same skillet.
Add the ground beef, breaking it up with a spatula. Season with salt and pepper. Cook until browned and no longer pink, about 5–7 minutes.
Drain excess fat if needed, leaving a little for flavor.
Add aromatics: Stir in the onion and bell pepper. Cook until softened, about 3–4 minutes. Add the garlic and cook for 30 seconds until fragrant.
Season it up: Sprinkle in smoked paprika, chili powder, cumin, and red pepper flakes.
Stir to coat the beef and veggies. Add tomato paste if using and cook for 1 minute to toast the flavors.
Bring it together: Return the sweet potatoes to the skillet. Add a splash of broth if the pan looks dry.
Toss everything together and cook for 2–3 minutes so the flavors meld.
Brighten and taste: Squeeze in lime juice (or stir in vinegar). Taste and adjust with more salt, pepper, or chili powder as needed.
Finish and serve: Sprinkle with chopped cilantro or green onions. Add optional toppings like shredded cheese, avocado, or a fried egg.
Serve hot.