No cauliflower, no ground beef. This keto pizza casserole layers cream cheese, marinara, and pepperoni under buttery pull-apart almond flour rolls. 5g net carbs and 21.7g protein per serving, and my kids actually request it on Friday nights.
I got tired of every low carb pizza recipe starting with cauliflower or ground beef. Nothing wrong with either, but I wanted something that actually felt like pizza night, not a healthy compromise pretending to be one. So I built this around what makes pizza craveable: a thick cream cheese base, proper marinara, layers of melted mozzarella, and pepperoni that crisps at the edges.
The cream cheese layer is what sets this apart. I mix it with 2 cups of the mozzarella, parmesan, Italian seasoning, and red pepper flakes until it’s smooth and creamy, then spread it across the bottom of the dish. It creates this rich, savory base that soaks up the marinara from above without getting watery. Think of it as the ‘crust’ replacement, except it adds flavor instead of just structure. If you like that layered, cheesy approach, my keto baked ziti uses a similar technique.
Then there are the pull-apart rolls on top. These are not fathead dough. The base is almond flour, but the reason they stay fluffy inside and get genuinely golden and crispy on top is the unflavored protein powder. It gives the dough structure that almond flour alone can’t. I roll them into small balls, pack them close together on top of the pepperoni layer, and brush everything with garlic butter before baking. They soak up juices from the marinara and cheese underneath, which gives you that pizza-dough bite in every piece.
I’ve made this for years and it works just as well for a Tuesday dinner as it does when I’m feeding extra people. The whole thing comes together in one casserole dish, and the leftovers reheat better than most keto dinners I make. If you’re looking for more casserole-style meals, my keto taco casserole and keto zucchini lasagna are both in the regular rotation at my house.
What I keep hearing from readers is that this doesn’t taste like a keto workaround. One reader, Steve, put it better than I could: ‘The whole casserole felt like actual pizza, not a keto compromise, which is not something I say lightly after four years of this.’ That’s the goal. Not a diet recipe that happens to be edible, but an actual dinner you’d make even if you weren’t counting carbs. If you love pizza nights, my keto deep dish pizza has a proper thick crust for when you want that extra base layer.
Crustless Low Carb Pizza Casserole
I started making this because I was tired of low carb pizza recipes that relied on cauliflower rice or ground beef as the base. This version has no cauliflower and no ground beef at all. There is no pasta in it either. Instead, I layer a seasoned cream cheese mixture on the bottom, pour marinara over it, pile on mozzarella and pepperoni, then top everything with homemade pull-apart rolls made from almond flour and protein powder. The rolls are what make it. They crisp up on top, stay soft where they meet the cheese, and soak up all the sauce and melted cheese underneath. If you want something even simpler on a busy night, my crustless pizza skips the topping entirely. But when I have 20 extra minutes, I always go with this version because the rolls make it feel like a real pizza dinner. My family doesn’t even think of it as a keto meal. To them, it’s just Friday night.
Pepperoni Pizza
I went with pepperoni here because my boys demolish it. It’s always in our fridge since they snack on it constantly. But you can swap in any of your favorite pizza toppings:
Load up a few of these together and you’ve got a supreme-style version. I pile on pepperoni, olives, and mushrooms when I’m making it for a crowd. Cooked sausage or ground beef works as a topping too, but I keep ground beef out of the base on purpose. Ground beef base versions taste fine, but they are just casseroles with pizza toppings, and the rolls on top are what make this one feel like pizza night.
Pizza Sauce
Use your favorite marinara here. I usually grab Rao’s or Yo Mama’s because they don’t sneak in added sugar. I’ve tried at least six different brands over the years and those two have the best flavor without anything I don’t want in there. Plain canned tomato sauce with Italian seasoning works too if that’s what you have on hand.
Pull-Apart Rolls
What makes this recipe different is the buttery, pull-apart rolls on top. They soak up the juices from the marinara and melted cheese, giving you that pizza dough element in every bite. This isn’t fathead dough. The base is almond flour, but the protein powder is what keeps the rolls fluffy inside and structured enough to hold together. I’ve made them without it and the difference is obvious. If you’d rather skip the rolls and go straight for a crust, my keto chicken crust pizza is a completely different approach that works just as well.
How to Make It
I pull the cream cheese out at least an hour before I start so it spreads evenly. Cold cream cheese leaves thick patches and thin spots in the base layer. I measure out all my dry ingredients before I start mixing. The key to the pull-apart rolls is working quickly once you melt the mozzarella. If it starts to harden, microwave it for 10-15 seconds to soften it back up. I’ve re-microwaved it partway through mixing and it turns out fine. Roll the dough balls to about 1/2 to 3/4 inch and make sure they’re touching or nearly touching on top of the pepperoni layer. If your rolls come out soft inside, they were probably too big or too thick. Try making them smaller and lowering the oven by 25 degrees while adding a few extra minutes to the bake time. The rolls also go from pale to overdone fast, so I start checking at 15 minutes and tent the dish with foil once the tops look set. In a 9x13 pan the filling spreads thinner and the rolls can take on color a few minutes earlier.
Preheat oven to 350 degrees. Spray an 8×10 casserole dish with cooking spray and set aside.
2
Cheese mixture
To a large bowl, mix together 2 cups shredded mozzarella cheese, cream cheese, grated parmesan cheese, Italian seasoning and red pepper flakes using an electric mixer until creamy and smooth.
3
Cheese layer
Spread cheese mixture evenly into the casserole dish.
4
Pizza sauce
Pour pizza sauce on top of the cheese layer and spread using the back of a spoon.
5
More cheese
Sprinkle 2 cups shredded mozzarella cheese on top of sauce in an even layer.
6
Pizza topping
Evenly lay down sliced pepperoni on top of the shredded cheese layer. Set aside.
7
Make pull-apart rolls
In a food processor, pulse together almond flour, protein powder, baking powder, xanthan gum and salt until combined. Add egg, melted cheese, butter and sour cream. Pulse until dough ball forms. NOTE: You can also mix the dough using an electric mixer. It will take longer to evenly combine.
8
Roll into balls
Pinch off dough and roll between the palms of your hands into 1/2-3/4 inch balls. Layer on top of the pepperoni, making sure the balls are touching or close to touching each other.
9
Buttery Garlic Sauce
In a small bowl, mix together melted butter, minced garlic and chopped parsley. Brush on top of the keto dough.
10
Bake
Bake in a 350 degree oven for 15-20 minutes or until the pull-apart rolls are golden brown.
Nutrition
Per serving: 1/12 of recipe
Calories
491
Fat
48.4g
Protein
21.7g
Total carbs
7.5g
Net carbs
5g
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 ahead of time?
I've assembled this a full day ahead and kept it covered in the fridge. When you're ready, just add about 10 extra minutes to the bake time since it's going in cold. The cream cheese base actually sets up better when it's had time to chill, so the layers stay more distinct.
How do I store leftovers, and can I freeze this casserole?
I keep leftovers in an airtight container in the fridge for up to 4 days and reheat them in the oven at 350 degrees, which crisps the rolls back up. The microwave works in a rush, but the rolls go soft. To freeze, let it cool completely, wrap it tightly in foil, and put it in a freezer bag. From frozen I bake it covered at 350 degrees for about 40-50 minutes, then uncover for the last 10 to crisp the rolls. They hold up better than I expected, though not quite as crispy as fresh.
Can I swap the mozzarella or the cream cheese?
I've tested provolone and an Italian cheese blend in place of the mozzarella, and both work. Provolone gives a slightly sharper flavor that I sometimes prefer. For the cream cheese, mascarpone swaps 1:1 and tastes a touch milder. Ricotta works but makes the base a bit grainier, so stick with cream cheese or mascarpone if texture matters to you. If you can't do dairy, a nondairy cream cheese sets up fine once baked. Nondairy mozzarella is trickier, so I go with Violife or Miyoko's shreds, not the store brand.
Why did my rolls sink into the filling?
Usually the balls were too big or the filling ran a little loose. I roll mine to about 3/4 inch, and anything bigger gets swallowed by the cheese. If your filling looks loose, give the casserole a few minutes in the oven on its own, then add the rolls for the last 15 minutes so they stay distinct on top.
Cut it while it’s still warm. I learned the cream cheese layer bonds to the mozz as it cools and you lose clean squares. Rolls hold in a sealed container four days, no texture issues. Sunday to Thursday, done.
Riley, I cut mine warm too but I never knew that was why it works. Thank you for pinning that down, and four days sealed matches what I get out of mine.
Pizza casserole at a pool sounds wrong on paper. But that cream cheese base firms up as it sits, so room temp might be its best form. Mine usually gets eaten straight out of the oven but I’ve had cold leftovers the next day and they hold up better than I expected. The rolls get a little denser when they cool but they still pull apart. Bring this everywhere.
Sixth time through and I finally got it. The cream cheese makes everything so heavy it needs something sharp, and heat does that better than lemon or vinegar would. Bumped up the flakes in batch four. Different dish. Still on Fridays and not going anywhere.
Tip before you start: pull the cream cheese out at least an hour early, not 20 minutes. I spread it cold on my first attempt and got thick patches and thin spots all through the base. Made it again three days later with properly softened cream cheese. Different dish. My 8-year-old won’t touch red sauce on anything, and she finished her piece and then just stood at the pan looking at it. The cream cheese cuts the marinara enough that it doesn’t hit like regular pizza sauce, which is probably why. Almond flour rolls had me nervous (I’m not really a baker) but they came out puffy and golden, exactly like the photos. One note: go heavier on the red pepper flakes. Pretty mild without them. Friday rotation for the rest of summer.
An 8-year-old standing at the pan. That’s the whole review. The cream cheese cuts the marinara enough that it stops tasting like red sauce, which is exactly why the picky eaters come around on this one. An hour to soften is right, twenty minutes isn’t close. I do closer to two teaspoons of red pepper flakes, sometimes more. Pretty mild otherwise.
Every keto pizza casserole I’d tried before used cauliflower as a base or ground beef, and something always felt like a workaround. The pull-apart almond flour rolls on top are what actually make the difference here. That buttery layer is what all the other versions were missing.
The rolls are why I kept reworking this. Ground beef base versions taste fine but they’re just casseroles with pizza toppings. The buttery pull-apart top is what makes it feel like something you’d actually want on a Friday night.
I’ve only got a 9×13 pan and I’m throwing this together for dinner tonight. Does the bigger dish affect the bake time on those pull-apart rolls on top, or will they still come out right?
If your oven runs hot, tent the foil at 20 minutes. Rolls brown faster than the casserole finishes, so covering for the last bit keeps things from getting overdone.
The flavor layers are spot-on, but my rolls sank into the filling during baking and lost that pull-apart texture I was expecting. Might try adding them in the last 15 minutes next time to keep them distinct. Otherwise solid.
The 15-minute drop-in works. I’ve done that when my filling runs a little loose. Smaller balls help too, mine are about 3/4 inch, anything bigger and they just get swallowed.
My wife can’t do dairy, so we’d need to swap the cream cheese and mozzarella. I’ve used dairy-free cream cheese before but never when it’s basically the whole base layer. Does it still set up okay when baked or does it stay loose?
My son called the rolls on top ‘the good bread’ and asked if we could just have those for dinner sometime. (They’re almond flour. Didn’t mention that.)
Swapped the pepperoni for hot Italian sausage and the rolls absorbed so much rendered fat it came out closer to deep-dish than casserole. Not what I was going for, but I’m keeping it.
That’s an upgrade, not an accident. Hot Italian sausage renders way more fat than pepperoni, so of course the rolls absorbed it. That’s the version I’d make on purpose.
I kept scrolling past this because I couldn’t picture how almond flour rolls would work on top of a casserole. Made it on a whim last week anyway and they baked up golden and pull-apart, not what I expected. The cream cheese layer threw me off too, but it all kind of works. I’d probably add a little more marinara next time, but I’m already planning round two.
Was skeptical about almond flour pull-apart rolls actually working as a topping, but they came out genuinely golden with real pull-apart texture that I’ve never gotten from a fathead crust. The whole casserole felt like actual pizza, not a keto compromise, which is not something I say lightly after four years of this. Four stars, and I’m already thinking about what toppings to load in next time.
just made this. it was good. but, i have a couple questions…1) i dont have a food processor so used my hand mixer…how do you keep the melted mozzarella soft long enough to incorporate? 2) my keto rolls were soft inside (maybe a little moist). did i do something wrong? any advice appreciated
I usually have all of my ingredients measured out and ready to combine before I mix everything. You could microwave the cheese right before you add it or I have even re-microwaved it before adding it. If the dough was still a little soft, they might have been too big or thick or you could try lowering the oven temperature a bit and cooking them longer.
I made this tonight and it was delicious! I added more pepperoni and some cooked sausage cause 3oz of pepperoni was not enough for me 😉
I’m going to try making the pull apart rolls by themselves, they were so good