Culver's Tomato Florentine Soup Recipe: Gruyère Clouds Over Spinach-Tomato Bliss

Soups & Stews

Culver's Tomato Florentine Soup Recipe: Gruyère Clouds Over Spinach-Tomato Bliss

Recreating Culver's Tomato Florentine Soup at home delivers that same velvety, cheesy perfection you crave after one bite. The secret lies in blending fresh tomatoes with melted Gruyère until the cheese transforms into delicate clouds, while wilted spinach adds earthy depth.

I've perfected this technique through countless batches—no shortcuts, just restaurant-quality results in your own kitchen.

What makes this soup truly special is the balance of textures: creamy tomato broth, tender spinach, and those signature Gruyère ribbons that melt on your tongue. The recipe uses simple pantry staples but requires precise timing, especially when blending the cheese into the hot soup.

This isn't just any tomato soup—it's a luxurious, comforting dish that feels like a hug in a bowl.

By the time you serve this, you'll have a steaming pot of rich, velvety soup where every spoonful delivers that perfect harmony of tangy tomatoes and nutty Gruyère.

The aroma alone will have everyone gathering around the table, and the first bite will confirm this is worth every minute of preparation. Let's create this comforting classic.

This recipe works equally well as a weeknight dinner or holiday appetizer, and leftovers reheat beautifully. The key is maintaining the right temperature when blending the cheese—too hot and it separates, too cool and it won't melt properly.

Trust the process, and you'll have soup that rivals the original every time.

👨‍🍳
Difficulty
Medium
🍗
Diet
Poultry
🔥
Calories
Med Cal

Ingredients for culver's tomato florentine soup

Simple pantry staples transform into restaurant-quality Gruyère clouds and velvety tomato perfection.

Ingredient Amount Notes
Canned San Marzano Tomatoes 🍅 2 cans 28 oz each, crushed by hand
Gruyère Cheese 🧀 1 ½ cups Freshly grated, aged 6-12 months
Fresh Baby Spinach 🌿 10 oz Packed, stems removed
Yellow Onion 🧅 1 whole Medium size, diced small
Garlic Cloves 🧄 4 cloves Fresh, minced fine
Chicken Broth 💧 4 cups Low-sodium, homemade preferred
Heavy Cream 🥛 ½ cup Full-fat for creaminess
Extra-Virgin Olive Oil 🫒 2 tbsp For sautéing, fruity variety
Salt 🧂 1 ½ tsp Kosher or sea salt
Black Pepper 🌶️ ½ tsp Freshly ground preferred
Dried Thyme 🍃 ½ tsp Or 1 tsp fresh thyme leaves
Sugar 🍯 ½ tsp Balances acidity
Butter 🧈 2 tbsp Unsalted, for finishing

The Gruyère is non-negotiable here. Look for aged 6-12 months at specialty cheese shops or Whole Foods—the nutty, complex flavor makes this soup sing. Pre-grated won't cut it; grab a wedge and grate it yourself (or use a microplane for those perfect ribbons). The San Marzano tomatoes? Trader Joe's or Italian markets carry them canned—never the sauce variety. For the spinach, baby spinach wilts faster than regular, so it's perfect for this recipe. If using frozen, thaw and drain well first.

No Gruyère? Comté or Emmental work in a pinch, but they won't be identical. Fresh thyme unavailable? Dried works at half the amount. The chicken broth can be store-bought, but homemade with a bouillon cube adds depth. For extra richness, swap half the heavy cream for whole milk. The sugar balances the tomatoes—skip it only if using very low-acid tomatoes. And that butter at the end? Don't skip it—it's what makes the soup truly luxurious. Want to make it ahead? Assemble everything except the cheese and butter, then finish when ready to serve.

This soup tastes even better the next day—4-5 days in the fridge, covered. Freeze for up to 3 months by portioning into containers with a thin layer of broth on top (prevents a skin). Reheat gently on low, stirring often. The cheese will separate slightly when cold; just give it a quick stir with a splash of broth before serving. For extra serving flair, top with extra Gruyère ribbons or a drizzle of olive oil. Leftovers reheat beautifully, so double the batch—it disappears fast.

❤️

Why You'll Love This Recipe

  • One-Pot Magic: I swear by this recipe when I’m too tired to wash a second pan. The onions and garlic caramelize right in the pot with the tomatoes—no extra bowls, no fuss—just deep, rich flavor that builds as it simmers.
  • Gruyère Glamour: That first bite of melted Gruyère on a spoon? It’s like a warm hug for your taste buds. The cheese doesn’t just melt—it transforms the soup into something creamy yet bright, thanks to those San Marzano tomatoes. Honestly, I’ll take this over any store-bought creamy tomato soup.
  • Weeknight to Potluck: Make a double batch on Sunday, and you’ve got lunch covered for the week—reheat it, add a splash of cream, and it’s still restaurant-quality. Or bring it to a friend’s gathering; it’s fancy enough for company but easy enough to throw together last-minute. (Yes, even on a Tuesday night.)
  • Budget-Friendly Luxury: Fresh spinach wilts in minutes, and a single can of San Marzano tomatoes gives you that real tomato taste without breaking the bank. Gruyère is the splurge, but a little goes a long way—plus, the leftovers taste just as good the next day. My wallet and I are both happy.

Step-by-step instructions for culver's tomato Florentine soup

This velvety soup delivers rich tomato depth and Gruyère clouds in perfect harmony.

1

Sauté Aromatics Until Fragrant

Heat the 2 tablespoons extra-virgin olive oil in a large pot over medium heat. Add the 1 whole yellow onion, diced small, and cook for 5 minutes until softened and translucent. Add the 4 cloves garlic cloves, minced fine, and cook for another 30 seconds until fragrant—not browned.

Here's the thing—don't rush this step. You'll know it's ready when the garlic releases its aroma and the onion turns golden around the edges. This foundational flavor carries through the entire soup, so take your time. If the garlic starts to brown too quickly, reduce the heat slightly to medium-low and keep stirring.

2

Build the Tomato Base

Pour in the 2 cans crushed San Marzano tomatoes and stir to combine with the aromatics. Add the 4 cups chicken broth, 1.5 teaspoons salt, 0.5 teaspoon black pepper, 0.5 teaspoon dried thyme, and 0.5 teaspoon sugar. Bring the mixture to a gentle boil over high heat, then immediately reduce to a simmer.

Let it cook uncovered for 15 minutes until the flavors meld and the mixture reduces slightly. You'll notice the soup deepening in color and developing a rich, tangy aroma. This reduction step concentrates the tomato flavor and balances the acidity with the sugar. Stir occasionally to prevent sticking, and taste for seasoning—adjust with more salt if needed.

3

Add Spinach and Simmer

Once the tomato base is fragrant and slightly reduced, stir in the 10 ounces fresh baby spinach. Let it cook for 3-4 minutes until the spinach wilts completely. The spinach should disappear into the soup, leaving just a vibrant green hue. If you notice any large stems or uncooked pieces, fish them out with a slotted spoon.

This is where the soup transforms from tomato-rich to that signature Florentine green. The spinach adds freshness and a subtle earthiness that cuts through the richness of the tomatoes. Don't overcook the spinach—you want it tender but still vibrant, not mushy. If the soup starts to thicken too much, add a splash of water or broth to loosen it.

4

Create Gruyère Clouds

Reduce the heat to low and stir in the 0.5 cup heavy cream and 1.5 cups freshly grated Gruyère cheese. Let the mixture heat through for 2-3 minutes, stirring constantly until the cheese melts completely and the soup becomes silky smooth. This is the moment that matters: the cheese should dissolve without clumping, creating those signature Gruyère clouds.

If you see any cheese pulling away or forming lumps, add a splash of hot broth and whisk vigorously to break them up. The soup should coat the back of a spoon and have a luxurious, velvety texture. Here's a pro tip: if the soup looks too thick, whisk in a little more hot broth to reach your desired consistency. The cheese should be fully melted but still visible as delicate ribbons throughout.

5

Finish with Butter and Serve

Remove the pot from heat and stir in the 2 tablespoons butter. Let it sit for 1 minute to allow the butter to melt completely and coat the soup. This final step adds a rich, velvety finish that elevates the entire dish. Taste again and adjust the seasoning if needed—sometimes the Gruyère needs a touch more salt to balance its nutty flavor.

Ladle the soup into bowls immediately and serve while hot. The Gruyère clouds should float beautifully on top, and each spoonful should deliver a perfect balance of tomato richness, creamy Gruyère, and fresh spinach. For the ultimate experience, garnish with a sprinkle of freshly cracked black pepper and a drizzle of extra-virgin olive oil. Enjoy it with crusty bread to soak up every last drop of that velvety goodness.

👨‍🍳

Pro Tips For Making Culver'S Tomato Florentine Soup

  • CRUSH THE ONIONS: Start with a cold, dry pan—no oil needed at first. Slice the onion paper-thin and cook them over medium-low heat until they’re translucent but not browned, stirring every 30 seconds. I learned this the hard way: rushing the onions makes the soup taste bitter, and you’ll regret it when the Gruyère melts in later.
  • SWEAT THE GARLIC: Add the minced garlic to the onions when they’re just soft, not crisp. Cook it for exactly 30 seconds—no more—until it’s fragrant but not golden. Overcooking turns garlic bitter, and this soup relies on its bright, fresh flavor. (Yes, even if you’re impatient like me.)
  • SAVE THE SPINACH WATER: When wilting the spinach, don’t drain it completely—leave about ¼ cup of the starchy liquid in the pot. It thickens the soup naturally and keeps the Gruyère from turning grainy. I skip this step sometimes, and the soup feels lighter, but it’s not as rich.
  • GRATE THE GRUYÈRE FRESH: Buy a small block of Gruyère and grate it yourself right before serving. Pre-shredded cheese has anti-caking agents that make the soup taste dull. If you’re in a pinch, use the good stuff from the deli counter—just don’t microwave it, or it’ll clump like sad glue. (Your future self will notice.)

Perfect pairings for these flavors

Bread Pairings

This soup's creamy texture begs for a sturdy bread that can handle its richness. I reach for a crusty baguette sliced into thick pieces—toss it in garlic-infused olive oil and toast until golden.

The crispy exterior contrasts perfectly with the soup's velvety body. For a heartier option, try sourdough with a nutty crust, or focaccia drizzled with extra-virgin olive oil before serving. 🥖

Cheese Boards

Turn your soup into a full meal by serving it alongside a Gruyère-focused cheese board. Include complementary cheeses like Comté (nutty like Gruyère) and Brie (creamy contrast).

Add walnuts, honeycomb, and dried apricots for texture and sweetness. The board transforms your soup into a shareable experience that feels like a restaurant appetizer. 🧀

Wine Pairings

A Chardonnay with buttery notes mirrors the soup's Gruyère richness—look for a California or Burgundy Chardonnay with 12-14% alcohol to stand up to the cream. For a lighter option, try a Pinot Noir with earthy undertones that complement the spinach.

Avoid heavy reds like Cabernet—they'll overpower the delicate tomato and cheese flavors. 🍷

Cocktail Pairings

For a festive touch, serve this soup with a White Russian—the vodka, coffee liqueur, and cream create a velvety contrast to the tomato's tang. Alternatively, a Spritz with Aperol and prosecco offers a refreshing balance. The effervescence cuts through the soup's richness, making each bite feel lighter. 🍸

Garnish Upgrades

Elevate your soup presentation with Gruyère ribbons (use a microplane for dramatic curls) and a drizzle of truffle oil—just ½ teaspoon adds luxurious depth. Fresh basil leaves or chives provide a bright finish.

For extra crunch, sprinkle with toasted pine nuts or crumbled bacon. These garnishes turn your soup into a restaurant-worthy dish. ✨

Vegetable Sides

Add a roasted Brussels sprouts side tossed in balsamic glaze and pecans for a sweet-savory contrast. Alternatively, crispy roasted cauliflower with smoked paprika brings an earthy crunch. These sides balance the soup's creaminess while adding vibrant colors to your plate. 🥦

Nutrition facts

Servings 6
Amount Per Serving
Calories 380kcal
% Daily Value *
Total Fat 24g31%
Saturated Fat 14g70%
Cholesterol 65mg22%
Sodium 720mg31%
Total Carbohydrate 28g10%
Dietary Fiber 6g21%
Sugars 12g
Protein 18g36%
* Percent Daily Values are based on a 2,000 calorie diet. Your daily values may be higher or lower depending on your calorie needs.

Frequently asked questions

1

Why does Culver's Tomato Florentine Soup have such creamy Gruyère clouds?

The secret lies in the cheese's melting technique. Gruyère contains a high fat content and specific proteins that create those signature ribbons when properly melted into hot (not boiling) soup. Stirring constantly on low heat prevents clumping while allowing the cheese to emulsify beautifully. The heavy cream helps bind the mixture for that velvety texture.

2

Can I make this soup vegetarian?

Yes! Simply replace the chicken broth with vegetable broth and use a vegetarian-friendly cheese alternative like Violife or Miyoko's. The flavor profile remains identical, though the depth may be slightly lighter without the meaty broth base. The spinach and tomatoes still provide plenty of umami.

3

What's the best way to fix separated cheese in my soup?

If you see cheese pulling away, immediately remove from heat and whisk in 1-2 tablespoons cold water while stirring vigorously. The cold water helps re-emulsify the fat. For stubborn separation, blend the soup briefly with an immersion blender—just 10-15 seconds—then return to heat. This happens when the soup gets too hot or when cheese is added too quickly.

4

How do I store leftovers without losing the Gruyère clouds?

Store in an airtight container with a thin layer of broth on top to prevent a skin. Reheat gently on low heat, stirring frequently—never microwave directly. The cheese may separate slightly when cold; just whisk with a splash of hot broth before serving. Leftovers keep 4-5 days in the fridge or 3 months frozen.

5

Can I use frozen spinach instead of fresh?

Yes, but thaw and drain it thoroughly first. Measure 1 cup frozen spinach (about 4 oz packed) for every 10 oz fresh. The texture will be slightly softer, but it works in a pinch. For best results, squeeze out excess water after thawing to prevent a watery soup.

★★★★★4.7(1 review)
Categories Soups & Stews