Keto focaccia bakes up crispy outside with a soft, bread-like pull inside at 1.8g net carbs a slice. Olive oil and herbs pool in every dimple, and strips are made for dipping in marinara or straight olive oil.
Traditional focaccia has about 37g of carbs per slice. This one has 1.8g. I got there without cheese, without yeast, and without sacrificing the texture that makes focaccia worth eating in the first place. The outside crisps under the broiler while the inside stays soft enough to tear.
The base is blanched almond flour mixed with lupin flour, and that lupin flour is the ingredient I think most people skip. It’s mostly fiber, keeps the carbs lower than using all almond flour, and it adds a subtle cornmeal-like flavor that pushes the bread toward something savory and Italian instead of just another almond flour flatbread. I tested it both ways, and the version with lupin flour wins every time.
Unflavored protein powder and xanthan gum give the dough enough structure to trap air bubbles as it bakes, so you get that light, bread-like crumb instead of a dense puck. The dimples are the other half of the equation. I press them deep and sprinkle the herbs right in. After 10 minutes at 350 degrees and a quick broil, the top goes golden. Then I brush the whole thing with olive oil while it is still hot, so it pools in every indent and the herbs bloom right into the oil.
I make this most weeks. Sometimes I eat it on its own, sometimes I tear off strips and dip them into marinara. It’s the kind of bread that works next to a crustless pizza or a pizza bowl on Italian night, or sliced thin alongside a salad. One reader told me she tried four other keto versions before this one, and this was the first where she wasn’t immediately missing regular bread. Another is on her fourth batch, making it every pizza night with marinara for dipping.
The whole recipe comes together in 17 minutes. No rising time, no kneading for 10 minutes, no waiting around. Mix the dough, roll it out, dimple it, bake it, broil it. That’s it.
What is focaccia (and how is this one different)?
Traditional focaccia is an Italian flatbread made with high-gluten flour and yeast, baked in sheet pans at high heat (around 475 degrees) and loaded with olive oil, herbs, and sometimes vegetables. It’s one of those breads where the simplicity is the whole point.
I wanted that same experience on keto, so I built this version around almond and lupin flour with protein powder for structure. There’s no yeast and no rise time, but the baking powder and eggs create enough lift to get a real crumb inside with a crispy broiled crust on top. The dimples work the same way they do in traditional focaccia: they keep the dough from puffing up too fast and they hold the olive oil exactly where you want it.
Toppings I keep coming back to
I’ve tried a lot of combinations on this bread. The Italian seasoning, rosemary salt, and olive oil in the recipe card are my default, but here are the toppings I rotate through:
Before baking: fresh rosemary, minced garlic pressed into the dimples, Kalamata olives, roasted red pepper strips, grated parmesan, thinly sliced zucchini
After baking: fresh herbs (basil, thyme, oregano), flaky Maldon salt, lemon zest, a heavy drizzle of good olive oil, shredded mozzarella while it’s still hot
One combination I keep making: fresh rosemary and Maldon salt with extra olive oil. That’s it. Sometimes the simplest version is the one you actually repeat. If I want something heartier, I’ll shred mozzarella on top right out of the oven and serve it alongside keto mozzarella sticks for an Italian appetizer spread.
What to dip it in (and serve it with)
Marinara is my go-to. That olive oil-soaked crust holds up to dunking without falling apart, which is half the battle with any flatbread.
Garlic butter (melted butter, minced garlic, pinch of salt)
Beyond dipping, I use this bread as a side for Italian dinners. It’s good torn up next to soup, and I’ve served it on a keto butter board or sliced into strips for a keto charcuterie board. It pulls its weight as real bread on the table. I’ve used thicker slices as sandwich bread for panini-style lunches too.
How to store, freeze, and reheat
Refrigerator: store leftover focaccia in an airtight container for up to 5 days. It keeps its texture well, better than most low-carb breads I’ve made.
Freezer: wrap individual portions tightly in plastic wrap, then place in a freezer-safe bag. I’ve kept it frozen for up to 3-4 weeks with no noticeable texture loss.
Reheating: this is where most people go wrong. Don’t microwave it (you’ll get a rubbery sponge). I reheat mine in a 350-degree oven for 5-6 minutes, then hit it under the broiler for 30-60 seconds to re-crisp the top. The crust comes back almost as good as fresh. From frozen, add a couple extra minutes in the oven before broiling.
How to make keto focaccia bread
The technique matters more than the ingredients here. I’ve made this enough times to know where it goes wrong.
Mix the dry ingredients first so everything distributes evenly before the wet ingredients go in.
Knead with your hands once stirring gets tough. You want all the flour incorporated, no dry patches.
Roll between parchment paper to about 1/4 to 1/2 inch thick. Oil your hands before spreading. Work from the center out and go thinner than feels right. The dough naturally wants to pile up in the middle, and if you don’t fight it, you’ll end up with a thick center and thin edges.
Press the dimples deep. They’re not decorative. Those indents are reservoirs for the olive oil and herbs.
Broil for 1-2 minutes max. Any longer and the rosemary burns. Watch it the entire time.
Key ingredients
Almond flour: the base. Make sure it’s blanched and super fine, not almond meal.
Lupin flour: cuts the carbs lower than using all almond flour and adds a hint of cornmeal flavor I really like in this bread.
Protein powder: gives the bread structure and helps it rise. I use unflavored whey, but whey isolate works fine too.
Xanthan gum: holds the dough together so it doesn’t crumble when you tear it.
Butter: melted into the dough for flavor. This is where the richness comes from.
Eggs: two whole eggs plus one egg white for the wash. They help the bread rise and hold its shape.
In a medium bowl, whisk together almond flour, lupin flour, protein powder, baking powder, xanthan gum and salt.
For this step
1 1/2 cups almond flour
1/4 cup lupin flour
3 tablespoons unflavored protein powder
1 teaspoon baking powder
1/2 teaspoon xanthan gum
1/2 teaspoon salt
3
Add wet ingredients
Stir in melted butter and eggs. When dough gets tough to stir, knead with hands until all ingredients are evenly incorporated.
For this step
1 tablespoon butter, melted
2 eggs
4
Roll out focaccia dough
Mold dough into a square shape and place in between two sheets of parchment paper. Roll out into a flat rectangle using a rolling pin until the dough is about 1/4 -1/2 inch thick.
5
Dimples are cute
Brush dough with egg white. Using fingers or the handle of a wooden spoon, make dimple indents into the dough. Sprinkle Italian seasoning and rosemary salt.
For this step
Egg white
2 teaspoons Italian seasoning
1-2 teaspoons rosemary salt
6
Bake and broil
Bake at 350 degrees for 10 minutes. Then move focaccia under the broiler and broil on high for 1-2 minutes until the top of the focaccia is golden brown. Remove. Brush with olive oil and cut into small strips.
For this step
1-2 tablespoons olive oil
Nutrition
Per serving: 1 slice
Calories
149
Fat
12.3g
Protein
6.4g
Total carbs
4.2g
Net carbs
1.8g
Nutrition is an estimate calculated from the ingredients listed. Brands vary, so check labels if you track closely.
Frequently Asked Questions
Can I make this dairy-free?
Mostly, but not completely. The butter is the easy part: I've made it with melted coconut oil in place of the 1 tablespoon of butter and it works, and the herbs and olive oil cover the coconut flavor. Skip the optional parmesan topping too. The catch is the 3 tablespoons of protein powder. I use unflavored whey, which is a milk protein, so the dough is not fully dairy-free unless you use a non-dairy protein powder, and that is not a swap I can vouch for.
Can I use all almond flour in this recipe?
Yes. Replace the 1/4 cup of lupin flour with almond flour, which brings you to 1 3/4 cups of almond flour total. It runs a little higher in carbs and you lose the subtle cornmeal-like flavor, which is why I stick with lupin flour whenever I can get it.
I set these out at a cookout and a friend stopped mid-plate to ask what bakery they came from. The olive oil pools in the dimples and stays there the whole appetizer hour. That’s what sells it.
Forgot how much I missed that olive oil and herb smell coming out of the oven after going keto. Bottom needed a few extra minutes to crisp up all the way. Back in the rotation.
Dani, twice and already consistent is a good sign. A lot of keto breads are finicky about humidity or oven temp, but the lupin flour holds this one together. I’ve made it close to 30 times now. What I always do is push the dimples really deep, like all the way to the pan. The olive oil collects in them instead of running to the edges, and the herbs sit right in the fat. I’ll usually hit it with extra rosemary sea salt under the broiler the last 2 minutes and that’s where the top really crisps.
I’ve started setting the marinara out before it comes out of the oven. Still doesn’t make it. The olive oil pooling in those dimples is basically its own dipping situation.
Made this over the weekend and the texture was spot on but the bottom stayed a bit soft, does sliding it off the parchment for the last few minutes help get more of that crisp underneath?
The lupin flour is doing real work here. Most keto bread goes all the way through crunchy, but this one actually has that center pull. Cut mine into strips for a Rao’s dipping situation and the oil pooled exactly where you’d want it. Olive oil on top could’ve gone heavier, mine felt a little light, but this is the closest I’ve gotten to actual focaccia texture on keto.
I wasn’t sure the strips would hold up for dipping, almond flour bread falling apart in olive oil is a real concern. But the bottom crust firms up enough, and there’s more pull to the interior than I expected. I’ve made enough almond flour stuff to know how it usually goes, so when this held together at the dimples, I noticed.
Thought the protein powder would make it taste like a supplement bar. It didn’t. Soft pull on the inside, and the olive oil in the dimples crisps the edges perfectly.
Pressing the dimples really deep made a difference. I went further than the recipe photos suggested and the olive oil and Italian seasoning pooled right into them instead of spreading across the surface. Also brushed extra olive oil on top the second it came out, still hot. The crust got this glossy, herb-coated finish and cutting into strips felt like the obvious call. Worth it.
Focaccia was the bread I thought I’d just have to say goodbye to on keto. Made this Sunday and when I opened the oven and saw those dimples pooling with the herb oil, I got a little emotional (which I realize sounds dramatic, but anyone who’s been doing this long enough gets it). Still working on getting the thickness even, but this is one I’ll keep making.
Before I went keto four years ago, I made focaccia almost every other Sunday. Real Italian focaccia, the kind that takes all day and gets you olive oil on your elbows. I gave it up thinking that part of my cooking life was just done. Made this last week and stood at the counter eating the first piece while it was still warm, and I genuinely teared up a little. The dimples holding the olive oil and herbs exactly the way they should, that crisp bottom with actual soft bready pull inside. The lupin flour does something the all-almond versions I tried before couldn’t get close to. Not exactly the same, obviously, but it scratched an itch I’d been ignoring for four years. I’m not giving it 5 stars only because I’m still working on my herb blend (going heavy rosemary, want to try sun-dried tomato next), but I needed to say thank you for this one.
Standing at the counter while it’s still warm is the only way. Sun-dried tomatoes pressed into the dimples before the olive oil, they caramelize a little at the edges and hold the brine. Good call on heavy rosemary first.
I’ve tried probably four other keto focaccia recipes. They all had that dense muffin situation where the crumb just doesn’t move right. Was skeptical the lupin flour combo would be any different. But the dimples actually pooling olive oil and herbs got me (sounds minor, it’s not). Soft in the middle, crispy edges. Holds up as a dipper too. Sticking with this one.
The texture on this is genuinely good, crispy bottom with that soft pull-apart inside, and I’ve tried probably four other keto focaccia recipes that couldn’t nail the crumb. The lupin flour is what does it. Also kind of obsessed with the dimple technique, the olive oil pools in them perfectly. One thing I’d change: dial the Italian seasoning back to about 1 teaspoon and let the olive oil do more of the work. The herbs bloomed pretty aggressively in my oven and started fighting the bread. Still, two batches in two weeks. Next time I’m going straight rosemary and Maldon salt and I’m pretty sure that’s the version I just keep making.
I’ll be honest, I’ve made enough keto bread to know that ‘soft and bread-like inside’ is usually just what the recipe card says. Grabbed this skeptically because I’d never worked with lupin flour and expected the usual crumbly, dense result. I was wrong. The dimples hold the olive oil and herbs, the crust crunches, the inside tears like real focaccia. Tried four other keto versions and this is the first where I wasn’t immediately missing regular bread. Only reason for four stars: the dough is tricky to spread evenly, mine came out noticeably thicker in the middle. Good to know going in. Not stopping at one batch.
Oil your hands before spreading, it makes a real difference. Work from center out and go thinner than feels right. The dough naturally wants to pile up in the middle.
Used whey isolate for the protein powder and it worked fine. I also added some grated parmesan before baking. Needed closer to 13-14 minutes in my oven but the texture was right.