Eggs Florentine usually means an English muffin, a pile of spinach and a pour of hollandaise. This Full GAPS version skips the bread and bakes the eggs right on top of a creamy spinach and Romano base, so breakfast comes out of one skillet. It is rich, salty and filling, and it is on the table in about twenty-five minutes.
Four eggs bake over spinach and shallot in a thick Romano sauce. The spinach cooks until it gives up its moisture; a teaspoon of homemade coconut flour and a quarter cup of homemade coconut milk then bring the sauce together. Take the skillet from the oven when the whites look opaque and set while the yolks are still soft.

GAPS stage: Full GAPS after butter and Romano cheese have been introduced. The coconut milk replaces whole milk here, but the butter and cheese mean this dish contains dairy.
Serves: 2
Prep time: About 15 minutes
Cook time: About 8 minutes in the oven, after the stovetop steps
Conventional grain-based cereal, toast and muffins do not fit GAPS, so breakfast takes some planning. In my house, mornings are for homeschooling before I leave for a second-shift job. An egg dish with a cooked vegetable in it gives you both parts of breakfast in one pan.
We brought raw dairy from a trusted local farm into our meals through the GAPS introduction order. This recipe belongs after its butter and qualifying Romano are established. The coconut milk replaces whole milk in the sauce, but the finished dish still contains dairy.
Ingredients
- 2 tablespoons unsalted butter
- 1 shallot, chopped
- 8 cups baby spinach
- 1 teaspoon homemade coconut flour
- ¼ cup homemade coconut milk
- ⅓ cup shredded additive-free Pecorino Romano cheese
- ⅛ teaspoon pure dry mustard powder
- ½ teaspoon natural mineral salt
- 4 large eggs
- Prepared GAPS-compatible hollandaise and a dash of cayenne, optional for serving
Here is what each ingredient is doing. The butter is the cooking fat for the shallot and spinach, and it adds richness to the sauce. The shallot gives a mild, sweet onion flavor that is softer than a regular onion. Eight cups of baby spinach sounds like a lot, but it cooks down to a small fraction of that volume. The teaspoon of homemade coconut flour is the thickener. It does the job flour would do in a classic cream sauce. The quarter cup of homemade coconut milk is the liquid that turns into the sauce, standing in for the whole milk a traditional recipe would use.
The Pecorino Romano brings salt and a sharp, nutty flavor. Look at the label and choose one with nothing but milk, salt, culture and rennet, with no added starch or anti-caking agent. The pinch of dry mustard powder is a classic trick in cheese sauces. It sharpens the cheese flavor without tasting like mustard. The mineral salt balances everything, but go easy if your Romano is very salty. The four eggs sit on top, and the optional hollandaise and cayenne are finishing touches only.

Method
- Heat the oven to 500°F with a rack in the middle position.
- Melt the butter in a medium oven-safe cast-iron or stainless steel skillet over medium heat. Add the shallot and stir for about 3 minutes, until soft and translucent.
- Add the spinach. Cook for 5 to 7 minutes, stirring as it wilts and releases its moisture. The leaves should be collapsed before the flour goes in.
- Sprinkle in the measured coconut flour and stir constantly for 1 minute so no dry pockets remain.
- While stirring, slowly pour in the homemade coconut milk. Cook for about 2 minutes, until the sauce thickens around the spinach and a spoon briefly leaves a trail through it.
- Remove the skillet from the heat. Stir in the Romano, mustard, and salt until the cheese is evenly dispersed.
- Divide the spinach mixture between two small oven-safe dishes, or keep it in one skillet and make four wells with the back of a spoon. Crack one egg into each well.
- Bake for 6 to 8 minutes, just until the whites look opaque and set. Serve immediately. Add prepared hollandaise and a dash of cayenne only if you are using them.
A few cues make each stage easier to read. In Step 2, the shallot is ready when the pieces look glossy and see-through at the edges and smell sweet rather than sharp. Keep the heat at medium so the butter foams but does not brown. In Step 3, the spinach will fill the skillet to the rim at first. Keep turning it with a spoon and it will collapse into a dark green layer within a few minutes. Watch the bottom of the pan. You want the liquid the spinach releases to cook off, or the sauce will be thin.
In Step 4, the coconut flour disappears quickly into the damp spinach. Stir the whole minute so none of it sticks to the pan in a dry patch. In Step 5, pour the coconut milk slowly and keep stirring. The mixture looks loose at first and then turns creamy and clings to the leaves.
Stir the Romano into the spinach sauce off the heat, until evenly dispersed. Make four wells with the back of a spoon and crack one egg into each. Check after six minutes in the oven: the whites should look opaque and set while the yolks remain soft.

Keep the sauce measured
Use one teaspoon of the finished homemade coconut flour and a quarter cup of the finished homemade coconut milk. Both are measured after their own preparation. Add the milk gradually while stirring so the flour thickens the sauce without leaving dry clumps. The Romano stays at one-third cup; choose a plain cheese without added starch or flavoring.
If you want a faster morning, cook the spinach mixture ahead, refrigerate it, and warm it gently in the skillet. Make the wells and add fresh eggs only when you are ready for the oven. The six-to-eight-minute bake is the final step.
GAPS introduces dairy forms gradually. Being able to eat ghee or butter does not by itself establish that cheese is ready for your meals. Make this Full GAPS recipe after butter and qualifying Romano have been introduced; coconut milk does not make the butter-and-cheese dish dairy-free.
Storage and Serving
Serve this straight from the oven. The eggs keep cooking in the hot skillet, so plate them right away if you want soft yolks. Two eggs and half the spinach make one serving. Add a side of homemade sauerkraut or a few slices of avocado if you want a bigger plate.
The spinach base is the part that stores well. As the recipe notes, you can cook it ahead, refrigerate it and warm it gently in the skillet before adding fresh eggs. Store it covered in a glass container. Baked eggs themselves are best eaten fresh, since reheating firms up the yolks.

FAQ
Is this dairy-free because it uses coconut milk?
No. The butter and Romano cheese are still dairy ingredients. Make this after those forms have been introduced.
How thick should the spinach sauce be?
After about two minutes with the coconut milk, a spoon drawn through the spinach should leave a brief trail before the sauce closes over it.
Do I need hollandaise?
No. The eggs and spinach can be served as soon as the whites set. If you already have a GAPS-compatible hollandaise prepared, add it at the table.
Can I prepare the spinach the night before?
Yes. Chill the cooked spinach base, then rewarm it before cracking in the eggs and baking.
Can I use frozen spinach instead of fresh baby spinach? This recipe is measured for eight cups of fresh baby spinach, which cooks down in the pan. Frozen spinach holds more water and comes in a different measure, so it would change the sauce. Stick with fresh for this one.
What if I do not have an oven-safe skillet? Make the sauce in any skillet, then spoon it into two small oven-safe dishes as Step 7 describes. Cast iron, stainless steel, glass or ceramic dishes all work.
Can I double this for a bigger family? The recipe is written for two servings. If you need more, make a second batch rather than crowding one skillet, so the spinach can release its moisture and the eggs bake evenly.
Why is the oven set so high? A very hot oven sets the egg whites quickly while the yolks stay soft. At a lower temperature, the whites take longer to cook through and the yolks tend to firm up before the whites are done. Heat the oven fully before the skillet goes in, and start checking at six minutes.
Related Recipes
Recommended Equipment
- A medium oven-safe cast iron or stainless steel skillet
- Two small oven-safe glass or ceramic dishes, if you divide the spinach
- A wooden spoon for stirring and making the wells
- A small glass bowl for cracking the eggs
- A stainless steel measuring spoon and cup set
Next Steps
Breakfast Cookbook and Dairy introduction chart are coming soon.

Full GAPS Eggs Florentine with Spinach
Ingredients
Equipment
Method
- Heat the oven to 500°F with a rack in the middle position.
- Melt the butter in a medium oven-safe cast-iron or stainless-steel skillet over medium heat. Add the shallot and stir for about 3 minutes, until soft and translucent.
- Add the spinach. Cook for 5 to 7 minutes, stirring as it wilts and releases its moisture, until the leaves have collapsed.
- Sprinkle in the measured coconut flour and stir constantly for 1 minute so no dry pockets remain.
- While stirring, slowly pour in the 1/4 cup homemade coconut milk. Cook for about 2 minutes, until the sauce thickens around the spinach and a spoon briefly leaves a trail through it.
- Remove the skillet from the heat. Stir in the Romano, mustard and salt until the cheese is evenly dispersed.
- Divide the spinach mixture between two small oven-safe dishes, or keep it in one skillet and make four wells with the back of a spoon. Crack one egg into each well.
- Bake for 6 to 8 minutes, just until the whites look opaque and set while the yolks remain soft. Serve immediately.


Leave a comment