Soups & Stews
This bacon and tomato mac and cheese recipe delivers the perfect balance of smoky, crispy bacon and sweet, caramelized tomatoes in a creamy, cheesy embrace.
The secret lies in cooking the bacon until it's crispy and then using those rendered fats to build a rich, velvety cheese sauce that coats every strand of pasta. Every bite combines tender pasta, gooey cheese, and juicy tomato pieces with that irresistible bacon crunch.
The key to achieving this restaurant-quality dish at home is patience—letting the tomatoes caramelize slowly while the cheese sauce develops depth. The crispy bacon topping isn't just for show; it adds a smoky, salty contrast that cuts through the richness of the cheese.
This recipe transforms a simple comfort food into something special, with layers of texture and flavor that make it impossible to resist.
What you'll end up with is a bubbling, golden mac and cheese with crispy bacon bits peeking through the melted cheese and caramelized tomatoes adding a touch of sweetness. The sauce is thick enough to cling to each noodle but light enough to let the flavors shine.
It's the kind of dish that feels indulgent yet satisfying, perfect for a cozy weeknight dinner or a weekend family meal.
The beauty of this recipe is its versatility—it works as a main dish or a side, and leftovers reheat beautifully. The crispy bacon topping stays crispy even when reheated, ensuring that second helping tastes just as good as the first.
Let's make this comforting, flavorful mac and cheese that everyone will love.
Ingredients for bacon and tomato mac and cheese
Crispy bacon, caramelized tomatoes, and velvety cheese make this mac and cheese unforgettable.
| Ingredient | Amount | Notes |
|---|---|---|
| Elbow Macaroni 🍝 | 12 oz | Dry, medium or short elbow |
| Thick-Cut Bacon 🥓 | 8 oz | Center-cut for crispiness |
| Roma Tomatoes 🍅 | 1 lb | Halved, seeds removed |
| Yellow Onion 🧅 | 1 whole | Diced, medium size |
| Garlic Cloves 🧄 | 4 cloves | Minced, fresh preferred |
| Heavy Cream 🥛 | 1 cup | Full-fat for richness |
| Whole Milk 🥛 | 1 cup | 2% or whole preferred |
| Sharp Cheddar Cheese 🧀 | 2 cups | Shredded, block preferred |
| Monterey Jack Cheese 🧀 | 1 cup | Shredded, mild flavor |
| Unsalted Butter 🧈 | 4 tbsp | Reserved from bacon |
| All-Purpose Flour 🌾 | 2 tbsp | For thickening sauce |
| Kosher Salt 🧂 | 1 ½ tsp | Adjust to taste |
| Ground Black Pepper 🌶️ | ½ tsp | Freshly cracked |
| Fresh Thyme Leaves 🌿 | 1 tbsp | Chopped, optional garnish |
The bacon is everything here—center-cut slices stay crispy without burning. Look for thick-cut bacon at Costco or your grocery store's meat counter, not those flimsy pre-cut strips. For the tomatoes, Roma or vine-ripened work best—they caramelize faster than beefsteak varieties. I always grab extra cheese because shredded cheese loses moisture when melted. The cheddar should be sharp and aged (like Cabot or Sharp Cheddar from the deli section), while the Monterey Jack adds creaminess without overpowering.
No thick-cut bacon? Thin-cut bacon cooked twice (first for crispiness, second to render more fat) works in a pinch. Substitute Roma tomatoes with sun-dried tomatoes (soaked first) for a deeper flavor, but they'll be less juicy. The heavy cream can be swapped for half-and-half if you're watching fat, though the sauce won't be quite as rich. For the cheese, Pepper Jack adds heat, or Gruyère brings nutty depth. The flour is just a thickener—arrowroot powder works too if you're avoiding gluten. And if you're out of thyme, basil or parsley will do.
Cook the pasta al dente—it finishes in the oven. The bacon fat alone makes this sauce luxurious, but reserve 4 tbsp for the final stir. Store leftovers in an airtight container for 4-5 days, but the crispy bacon topping loses its crunch after reheating. For best results, reheat in the oven at 350°F until bubbly. Freezes beautifully for up to 3 months—just add a splash of milk when reheating to restore creaminess.
Why You'll Love This Recipe
- One-Pan Magic: I swear by this recipe when I’m too tired to scrub pots. The bacon cooks right in the same skillet you’ll toss the mac and cheese into—no extra dishes, just crispy edges and caramelized onions clinging to the bottom.
- Salty-Sweet Crunch: That first bite? Crispy bacon meets juicy Roma tomatoes, all swimming in a cheesy sauce with garlic that lingers. It’s the kind of combo that makes you pause mid-bite and think, “Wait, is this too good?”
- Lunchbox Hero: Between us, this is my go-to for meal prep. The leftovers reheat like a dream—bacon stays crispy, cheese doesn’t get gloppy—and the kids (or my husband) devour it cold straight from the fridge. Yes, even on a Tuesday.
- Budget Flex: Thick-cut bacon and Roma tomatoes stretch further than you’d think. I’ll be real: it’s not fancy, but it’s solid. A dollar stretch goes a long way when you’re feeding a crowd or just trying to save a few bucks without sacrificing flavor.
Step-by-step instructions for bacon and tomato mac and cheese
Here's how to build layers of smoky bacon, sweet tomatoes, and creamy cheese for perfect texture and flavor.
Cook the Bacon and Prepare the Tomato Mixture
Cut the 8 oz thick-cut bacon into ½-inch pieces and cook in a large skillet over medium heat until crispy, about 12-15 minutes. Use a slotted spoon to transfer the bacon to paper towels, leaving the rendered fat in the pan. Reserve 4 tablespoons of this bacon fat for later.
While the bacon cooks, halve the 1 lb Roma tomatoes, remove seeds, and dice into ¼-inch pieces. In a separate bowl, toss the diced tomatoes with ½ teaspoon kosher salt, ¼ teaspoon ground black pepper, and 1 tablespoon chopped fresh thyme leaves. Set aside until ready to use.
Sauté Onion and Garlic for the Sauce Base
Reduce heat to medium-low and add 1 whole diced yellow onion to the skillet with remaining bacon fat. Cook for 5-6 minutes until softened and translucent. Add the 4 minced garlic cloves and cook for 30 seconds until fragrant—don't let it brown or it'll turn bitter.
Stir in the 2 tablespoons all-purpose flour and cook for 1 minute to remove the raw flour taste. Slowly whisk in the 1 cup whole milk and 1 cup heavy cream, bringing the mixture to a gentle simmer. Let it cook for 3-4 minutes until slightly thickened, stirring occasionally to prevent lumps.
Build the Cheese Sauce and Cook the Pasta
Reduce heat to low and gradually add the 2 cups shredded sharp cheddar cheese and 1 cup shredded Monterey Jack cheese, stirring constantly until fully melted and smooth. The sauce should be thick enough to coat the back of a spoon but still pour easily. Season with the remaining 1 teaspoon kosher salt and ¼ teaspoon ground black pepper. Keep warm over low heat.
Meanwhile, bring a large pot of salted water to a boil and cook the 12 oz elbow macaroni until al dente (about 1 minute less than package instructions). Drain and immediately add the cooked pasta to the cheese sauce, tossing gently to coat evenly. Stir in the reserved tomato mixture and crispy bacon pieces, folding everything together until fully combined.
Assemble and Bake for the Perfect Crispy Top
Transfer the mac and cheese to a 9x13-inch baking dish, spreading it into an even layer. Dot the top with the remaining 4 tablespoons unsalted butter and sprinkle with an extra ¼ cup shredded cheddar cheese for that signature golden crust. Bake at 375°F for 15-20 minutes until bubbly and the top is deep golden brown. Broil for 1-2 minutes at the end for extra crispiness if desired.
Let it rest for 5 minutes before serving—this ensures the cheese sets properly and the layers hold together. The result should be creamy yet slightly firm pasta with a crispy, cheesy top, juicy bacon bits, and sweet tomatoes throughout every bite.
Pro Tips For Making Bacon And Tomato Mac And Cheese
- COOK BACON LOW AND SLOW: I used to rush the bacon and end up with chewy, greasy strips—this dish needs crispy edges. Cook thick-cut bacon on medium-low heat for 12-15 minutes, flipping once, until the fat renders but the meat stays tender. The extra time pays off when it melts into the cheese sauce like butter.
- DICE TOMATOES SMALL AND UNIFORM: Roma tomatoes break easily, and uneven pieces turn to mush in the sauce. Cut them into ¼-inch cubes—small enough to soften quickly but not so tiny they disappear. A quick soak in cold water for 5 minutes first helps tighten them up.
- DON’T BOIL THE PASTA DRY: Overcooked macaroni turns to glue in the sauce. Pull it out when it’s just al dente (test with a taste—it should have a slight bite), then toss immediately with a splash of pasta water. The residual starch helps the cheese cling instead of turning the dish into a sad, watery mess.
- SAVE THE BACON FAT: That golden liquid is liquid gold for this dish. After cooking the bacon, drain it just enough to remove the meat, then pour the fat into the same pan for the onions and garlic. It adds depth and richness without extra oil—no need to measure, just use it all.
Regional styles of these flavors
Southern Comfort Style
In the South, this mac and cheese gets a smoky twist with extra crispy bacon and a touch of heat. I like adding ½ teaspoon smoked paprika to the cheese sauce and topping it with chopped pickled jalapeños for tangy bite.
Serve with cornbread on the side—it soaks up the creamy sauce beautifully. 🌶️
New England Crispy Top
Up north, they take their mac and cheese to the next level with an extra-crispy cheese crust. After baking, I broil it for 2-3 minutes until the top is golden and almost caramelized.
A sprinkle of crushed black pepper right before broiling adds a peppery crunch that cuts through the richness. This version is perfect for cold New England winters.
Midwest Hearty Version
The Midwest loves their mac and cheese loaded with extra protein and veggies. I add ½ cup cooked ground beef to the tomato mixture and stir in ½ cup finely diced bell peppers for sweetness.
A sprinkle of crumbled blue cheese on top adds a tangy contrast that balances the richness. This hearty version is a crowd-pleaser for family gatherings.
California Fusion Twist
West Coast chefs love to put their own spin on classics. I blend ¼ cup salsa into the tomato mixture and top with avocado slices and crumbled cotija cheese for a fresh, zesty finish.
A drizzle of hot honey adds a sweet-spicy kick that pairs perfectly with the creamy cheese. This lighter version keeps the comfort food vibes but with a brighter, fresher profile.
Tex-Mex Style
In Texas, they take mac and cheese to new heights with bold flavors. I add ½ teaspoon cumin and ½ teaspoon chili powder to the cheese sauce, then top with diced green chiles and crushed tortilla chips for crunch.
A sprinkle of fresh cilantro adds a bright finish that cuts through the richness. This version is perfect for taco nights or game day gatherings.
Italian-Inspired
For an Italian twist, I swap the Monterey Jack for Parmigiano-Reggiano and add ½ cup sun-dried tomatoes (soaked and chopped) to the sauce. A sprinkle of fresh basil and grated Pecorino Romano on top elevates the dish to restaurant-quality.
This version is lighter but still packed with flavor, perfect for a cozy Italian night in.
Nutrition facts
Frequently asked questions
Can I make this mac and cheese without baking it?
For a stovetop version, cook the pasta al dente, then mix it with the cheese sauce and bacon-tomato mixture. Heat through on low for 3-5 minutes until everything is warm and creamy. The texture will be softer without the crispy top, but it's still delicious. Just skip the baking step entirely.
How do I prevent the cheese sauce from getting grainy?
Grainy sauce usually happens when cheese melts unevenly. The key is to add cheese gradually over low heat, stirring constantly until fully melted. Use block cheese (not pre-shredded) since it melts more smoothly. Also, keep the sauce moving gently to prevent hot spots. If it starts looking lumpy, whisk in 1 tablespoon milk at a time until smooth.
Can I use different types of pasta?
While elbow macaroni works best for this recipe, you can substitute with other short shapes like penne, shells, or fusilli. Avoid long pasta like spaghetti—it won't hold the sauce as well. For a fun twist, try cavatappi or farfalle, but cook them 1 minute less than package instructions to keep them al dente.
What's the best way to reheat leftovers?
Leftovers reheat best in the oven to maintain that crispy texture. Cover with foil and bake at 350°F for 15-20 minutes, then uncover and broil for 1-2 minutes to restore crispiness. For microwave reheating, cover with a damp paper towel and cook in 30-second intervals, stirring between each. Add a splash of milk to restore creaminess if needed.
Can I make this dish ahead of time?
You can prep all components the night before: cook the bacon, make the cheese sauce (without pasta), and chop the tomatoes. Store everything separately in the fridge. Assemble and bake just before serving. The sauce will thicken slightly overnight—thin with a splash of milk if needed. The crispy bacon topping is best added fresh right before baking for maximum crunch.
