Try this homemade calzone recipe for a fun twist on pizza night! Crispy on the outside, cheesy on the inside, and easy to customize with your favorite fillings.

Since Alex and I have become experts in homemade pizza, I decided why not try a fun twist: calzones! Wrap pizza dough and pizza sauce around a tasty filling, and you’ve got the best calzone recipe.
Sure, sharing half of a pizza is nice: but eating that same pizza in the form of your own personal pizza pocket is even more fun! You can use any vegetables you like in for the filling, and enjoy them with a delicious dipping sauce. Here, I’ll show you how to shape and bake perfectly golden and crisp calzones!
Why You’ll Love This Calzone Recipe
After spending years honing my homemade pizza dough and pizza sauce recipes (including several trips to Italy), I know this recipe is reliable enough to become your go-to. Here’s why you’ll love it:
- Reliably delicious: My popular pizza dough recipe has been loved by many readers, and using these simple shaping techniques makes impressive results
- Totally customizable: You can fill your calzones with any combination of cheese, veggies, and meat you prefer
- Freezer-friendly: Make a double batch and freeze extras for easy weeknight dinners
- Kid-approved: Even kids love helping shape the dough and choosing their fillings
Reader Reviews
“Made these tonight with your classic tomato sauce…absolutely amazing!” -Kristin
“My kids loved helping me make these, and they were delicious! I really love how easy it is to customize them, too!” -Chelsea

What Is a Calzone?
The calzone pizza is a folded pizza that originated in Naples, Italy (where all great food comes from, right?). It’s essentially a giant pizza pocket! Instead of being open-faced, the dough is filled with cured meats, cheeses, and veggies, then folded into a half moon shape and baked. The word “calzone” actually means “trouser leg” in Italian, referring to its folded shape!
Calzones usually don’t have any tomato sauce in them, since they’re served with marinara sauce for dipping. (This calzone recipe has just a bit of sauce stirred into the filling for a burst of flavor.) The difference between this and stromboli is that stromboli is rolled into a log shape and then sliced.
Dough Options: Homemade or Store-Bought
The foundation of any great calzone is the dough. Here are your best options:
- Homemade pizza dough is my first choice when I have time. I use my Best Homemade Pizza Dough Recipe, which takes 15 minutes of hands-on time plus 45 minutes to rise. The flavor and texture are unbeatable. If you have a stand mixer, try my Stand Mixer Pizza Dough method for even easier mixing.
- Store-bought pizza dough is a good shortcut for busy weeknights. Look for fresh dough in the refrigerated section of your grocery store. Make sure to let it sit at room temperature for 30 minutes before rolling.
Rolling tip: When rolling out your calzone dough, aim for circles about 5-6 inches in diameter and about 1/4-inch thick. Roll on a lightly floured surface to prevent sticking.

How to Make Calzones
Making calzones is simpler than you might think. Here’s my step-by-step process with troubleshooting tips built in (or jump right to the recipe below):
- Roll the dough: Place each dough ball on a lightly floured surface and gently press or roll it into a 5-6 inch circle. Don’t roll too thin or it may tear when you fold it. Tip: If the dough keeps shrinking back, let it rest for 5 minutes: this relaxes the gluten.
- Add the filling: Spoon about ⅓ cup of filling onto half of the dough circle, leaving a ½-inch border around the edge. Tip: Don’t overstuff! I learned this lesson the hard way: less really is more.
- Fold and seal: Fold the empty half over the filling to create a half-moon shape. Press the edges together, then crimp with a fork to seal completely. This prevents the cheese from leaking out during baking.
- Prepare for baking: Use a spatula to transfer the calzones to a baking sheet lined with parchment paper. Brush the top of each calzone with an egg wash (1 egg beaten with 1 tablespoon water), or olive oil. This makes the glossy golden brown color (if you skip this, it will turn out pale and matte in finish).
- Bake until golden: Preheat your oven to 500°F and bake for about 10 minutes.
Troubleshooting tips: If cheese is leaking out, use more pressure when crimping next time. If the bottom is soggy, make sure it was not over-stuffed and that the veggies are fully cooked and drained. If the top isn’t golden, brush with more egg wash or olive oil before baking.

Filling Ideas & Variations
My recipe features mushrooms, spinach, mozzarella, and Parmesan cheese, but there are so many ideas for filling variations:
- Cheese: Pecorino cheese for an even saltier flavor, a hint of ricotta (don’t use too much), or Fontina or provolone
- Veggies: Sauteed bell peppers, sauteed mushrooms, sauteed spinach, sauteed kale, sauteed broccoli, caramelized onions, roasted red peppers, sun-dried tomatoes
- Meat: Pepperoni, cooked sausage, pan seared chicken, prosciutto, salami
- Sauces: Pizza sauce, marinara sauce, or pesto
Tip: Always cook and drain veggies before adding them to your calzone filling. Raw vegetables release water during baking, which makes them soggy!

What to Serve With It
This calzone recipe is best served with anything you’d serve with pizza, really! Here are my favorite sides:
- Green salads: Some salads that would pair perfectly here: kale salad or my reader favorite chopped salad. Or, you could even go a beet salad or apple salad.
- Veggies & dip: Try our healthy ranch dressing or ranch dip with an assortment of veggies.
- Sauteed veggies: Instead of fighting for oven space, try it with boiled broccoli or my ultimate sauteed vegetables.
- Italian soups: For a heartier meal, pair your calzones with Italian Lentil Soup or Minestrone.
- Dipping sauces: Beyond marinara, try garlic butter, ranch dressing, or pesto.

Make Ahead, Storage & Reheating
If you’re planning to make this easy calzone recipe for guests, I’d recommend making the pizza dough in advance. My easy pizza dough recipe can be refrigerated for up to 3 days before making it, and it also enhances the flavor! You’ll just need to let it come to room temperature for about 30 minutes while making the filling.
Store leftover calzones in an airtight container in the refrigerator for up to 4 days. To reheat, place it on a baking sheet and warm in a 350°F oven for 10 to 15 minutes until heated through.
You can freeze calzones either baked or unbaked. For baked calzones, wrap each one individually in plastic wrap, then place in a freezer bag for up to 3 months. Reheat from frozen at 400°F for 25-30 minutes. For unbaked calzones, freeze them on a lined sheet pan until solid, then transfer to freezer bags. Bake from frozen, adding 5-10 minutes to the cook time.
Dietary Notes
This calzone pizza recipe is vegetarian.
Frequently Asked Questions
No! Calzone dough and pizza dough are exactly the same: you just shape and cook them differently. Any pizza dough recipe you love will work for making calzones.
A calzone is folded in half like a half-moon and sealed along the edges, while a stromboli is rolled up like a log and sliced into pieces.
The key is to cook all your veggies first and drain any excess liquid. Raw vegetables release water during baking, which makes the interior soggy. Also, use sauce sparingly inside the calzone: most of it should be served on the side. Finally, make sure your oven is fully preheated to 500°F for a crispy exterior.
You can double my pizza dough recipe without any issues! Just make sure you have a large enough bowl for the dough to rise properly. If you’re making a huge batch (more than double), I’d recommend making separate batches to ensure even mixing.
Easy Calzone Recipe
Try this easy calzone recipe for a fun twist on pizza night! Crispy on the outside, cheesy on the inside, and easy to customize with your favorite fillings.
- Prep Time: 1 hour 30 minutes
- Cook Time: 10 minutes
- Total Time: 1 hour 40 minutes
- Yield: 8 calzones (4 servings)
- Category: Main Dish
- Method: Baked
- Cuisine: Italian
Ingredients
- 1 recipe Best Homemade Pizza Dough Recipe or Food Processor Pizza Dough
- 16 ounces baby bella mushrooms
- 4 garlic cloves
- 6 cups (5 ounces) baby spinach leaves (roughly chopped and washed, if using standard spinach)
- 2 tablespoon olive oil
- 1 ½ tablespoons dried basil (or a handful of chopped fresh basil if in season)
- 1 cup Easy Homemade Pizza Sauce, plus more to serve (make 2 x the recipe)
- 2 cups shredded mozzarella cheese
- ½ cup Parmesan cheese
- 1 egg
- Kosher salt
Instructions
- Follow the Best Homemade Pizza Dough Recipe or Food Processor Pizza Dough recipe to prepare the dough. (This takes about 15 minutes to make and 45 minutes to rest.) After kneading, divide the dough into 8 equal parts. Brush the bottom of a container with olive oil, then brush the dough balls with olive oil on all sides and place them in the container. Cover the container and allow the dough to rise 45 minutes to 1 hour.
- Meanwhile, make a double recipe of the Easy Homemade Pizza Sauce, but use ¼ teaspoon garlic powder in place of the garlic clove (so ½ teaspoon garlic in all). One cup will be used in the calzone filling, and the remainder will be used as a dipping sauce.
- Make the filling: Slice the mushrooms. Mince the garlic. Heat the olive oil in a large skillet, and sauté the mushrooms, basil, and ½ teaspoon kosher salt until soft, around 4 minutes. Add the garlic and stir; sauté for 1 minute. Add the pizza sauce and spinach and cook down until the liquid has mostly cooked out. Remove from the heat. Taste and add more salt if necessary. Stir to combine with the mozzarella and Parmesan cheese.
- Preheat the oven to 500°F.
- Working dough 2 balls at a time, place the dough on a floured surface and gently press each into a roughly 5 to 6-inch circle (it’s helpful to measure to make sure it does not get too large). On one half of each dough circle, add a ⅓ cup of the filling mixture, making sure to leave ½ inch of space around the edge of the dough. Fold the other half of the dough over so that the calzone forms a half-moon shape. Crimp the edges together using a fork (we used a large serving fork). Use a spatula to transfer the calzones to a parchment lined baking sheet. Repeat for all 8 calzones, split between two baking sheets.
- Beat the egg together with 1 tablespoon water and brush the egg wash onto the top of the calzones.
- Bake the calzones until golden brown, about 10 minutes. Allow to cool, then serve with the remaining pizza sauce on the side.
Notes
Make ahead: Pizza dough can be refrigerated for up to 3 days before using. Let come to room temperature for 30 minutes before rolling.
Store-bought shortcuts: Use store-bought pizza dough and your favorite jarred marinara sauce to save time.
Prevent soggy calzones: Make sure to cook vegetables until most liquid evaporates before adding to filling.
(function(){
window.addEventListener( ‘message’, function( event ){
if ( ( ‘https://nutrifox.com’ !== event.origin && ‘https://nutrifox.test’ !== event.origin ) ||
typeof event.data !== ‘string’ ) {
return;
}
var payload = JSON.parse( event.data );
switch ( payload.event ) {
case ‘setHeight’:
var iframe = document.getElementById( ‘nutrifox-label-‘ + payload.recipeId );
iframe.style.height = payload.height + ‘px’;
break;
}
} );
}());
window.trCommon={“minRating”:6,”ajaxurl”:”https://www.acouplecooks.com/wp-admin/admin-ajax.php”,”ratingNonce”:””,”postId”:521};
window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.smoothScroll = {
init() {
document.addEventListener( ‘click’, ( e ) => {
let anchor = e.target;
if ( anchor.tagName !== ‘A’ ) {
anchor = anchor.closest( ‘a.tasty-recipes-scrollto’ );
}
if ( ! anchor || ! anchor.classList.contains( ‘tasty-recipes-scrollto’ ) ) {
return;
}
const elementHref = anchor.getAttribute( ‘href’ );
if ( ! elementHref ) {
return;
}
e.preventDefault();
this.goToSelector( elementHref );
});
},
goToSelector( selector ) {
const element = document.querySelector( selector );
if ( ! element ) {
return;
}
element.scrollIntoView( { behavior: ‘smooth’ } );
}
};
document.addEventListener(
‘DOMContentLoaded’,
() => window.TastyRecipes.smoothScroll.init()
);
window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.cookMode = {
wakeLockApi: false,
wakeLock: false,
cookModeSelector: ‘.tasty-recipes-cook-mode’,
init() {
if (“wakeLock” in navigator && “request” in navigator.wakeLock) {
this.wakeLockApi = navigator.wakeLock;
}
const cookModes = document.querySelectorAll(this.cookModeSelector);
if (cookModes.length > 0) {
for (const cookMode of cookModes) {
if (this.wakeLockApi) {
cookMode.querySelector(‘input[type=”checkbox”]’).addEventListener(“change”, event => {
this.checkboxChange(event.target);
}, false);
} else {
cookMode.style.display = “none”;
}
}
}
},
checkboxChange(checkbox) {
if (checkbox.checked) {
this.lock();
} else {
this.unlock();
}
},
setCheckboxesState(state) {
const checkboxes = document.querySelectorAll(this.cookModeSelector + ‘ input[type=”checkbox”]’);
for (const checkbox of checkboxes) {
checkbox.checked = state;
}
},
async lock() {
try {
this.wakeLock = await this.wakeLockApi.request(“screen”);
this.wakeLock.addEventListener(“release”, () => {
this.wakeLock = false;
this.setCheckboxesState(false);
});
this.setCheckboxesState(true);
} catch (error) {
this.setCheckboxesState(false);
}
},
unlock() {
if (this.wakeLock) {
this.wakeLock.release();
this.wakeLock = false;
}
this.setCheckboxesState(false);
}
};
(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
document.addEventListener(“DOMContentLoaded”, callback);
}
})(() => {
window.TastyRecipes.cookMode.init();
});
window.TastyRecipes = window.TastyRecipes || {};
window.TastyRecipes.staticTooltip = {
element: null,
tooltipElement: null,
deleting: false,
init( element ) {
if ( this.deleting ) {
return;
}
this.element = element;
this.buildElements();
},
destroy() {
if ( ! this.tooltipElement || this.deleting ) {
return;
}
this.deleting = true;
this.tooltipElement.classList.remove( ‘opened’ );
setTimeout( () => {
this.tooltipElement.remove();
this.deleting = false;
}, 500 );
},
buildElements() {
const tooltipElement = document.createElement( ‘div’ );
tooltipElement.classList.add( ‘tasty-recipes-static-tooltip’);
tooltipElement.setAttribute( ‘id’, ‘tasty-recipes-tooltip’ );
const currentTooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
if ( currentTooltipElement ) {
document.body.replaceChild( tooltipElement, currentTooltipElement );
} else {
document.body.appendChild( tooltipElement );
}
this.tooltipElement = document.getElementById( ‘tasty-recipes-tooltip’ );
},
show() {
if ( ! this.tooltipElement ) {
return;
}
const tooltipTop = this.element.getBoundingClientRect().top
+ window.scrollY
– 10 // 10px offset.
– this.tooltipElement.getBoundingClientRect().height;
const tooltipLeft = this.element.getBoundingClientRect().left
– ( this.tooltipElement.getBoundingClientRect().width / 2 )
+ ( this.element.getBoundingClientRect().width / 2 ) – 1;
const posLeft = Math.max( 10, tooltipLeft );
this.maybeRemoveTail( posLeft !== tooltipLeft );
this.tooltipElement.setAttribute( ‘style’, ‘top:’ + tooltipTop + ‘px;left:’ + posLeft + ‘px;’ );
this.tooltipElement.classList.add( ‘opened’ );
},
maybeRemoveTail( removeTail ) {
if ( removeTail ) {
this.tooltipElement.classList.add( ‘tr-hide-tail’ );
} else {
this.tooltipElement.classList.remove( ‘tr-hide-tail’ );
}
},
changeMessage( message ) {
if ( ! this.tooltipElement ) {
return;
}
this.tooltipElement.innerHTML = message;
}
};
window.TastyRecipes.ajax = {
sendPostRequest( url, data, success, failure ) {
const xhr = new XMLHttpRequest();
xhr.open( ‘POST’, url, true );
xhr.send( this.preparePostData( data ) );
xhr.onreadystatechange = () => {
if ( 4 !== xhr.readyState ) {
return;
}
if ( xhr.status === 200 ) {
success( JSON.parse( xhr.responseText ) );
return;
}
failure( xhr );
};
xhr.onerror = () => {
failure( xhr );
};
},
preparePostData( data ) {
const formData = new FormData();
for ( const key in data ) {
formData.append( key, data[key] );
}
return formData;
},
};
window.TastyRecipes.ratings = {
defaultRating: 0,
currentRatingPercentage: 100,
savingRating: false,
init( minRating ) {
this.minRating = minRating;
this.formWatchRating();
this.closeTooltipWhenClickOutside();
this.addBodyClassBasedOnSelectedRating();
this.backwardCompFormRatingPosition();
},
formWatchRating() {
const ratings = document.querySelectorAll(‘.tasty-recipes-no-ratings-buttons [data-rating]’);
if ( ratings.length {
event.preventDefault();
this.defaultRating = event.target.closest( ‘.checked’ ).dataset.rating;
this.setCheckedStar( event.target );
this.maybeSendRating( this.defaultRating, event.target );
this.setRatingInForm( this.defaultRating );
} );
}
},
closeTooltipWhenClickOutside() {
window.addEventListener( ‘click’, e => {
// Bailout (don’t remove the tooltip) when the clicked element is a rating star, or it’s the tooltip itself.
if ( e.target.closest( ‘.tasty-recipes-rating’ ) || e.target.classList.contains( ‘tasty-recipes-static-tooltip’ ) ) {
return;
}
window.TastyRecipes.staticTooltip.destroy();
} );
},
setRatingInForm( rating ) {
const ratingInput = document.querySelector( ‘#respond .tasty-recipes-rating[value=”‘ + rating + ‘”]’ );
if ( ! ratingInput ) {
return;
}
ratingInput.click();
},
addBodyClassBasedOnSelectedRating() {
const ratingInputs = document.querySelectorAll( ‘input.tasty-recipes-rating’ );
if ( ! ratingInputs ) {
return;
}
for ( const ratingInput of ratingInputs ) {
ratingInput.addEventListener( ‘click’, currentEvent => {
const selectedRating = currentEvent.target.getAttribute( ‘value’ );
this.handleBodyClassByRating( selectedRating );
this.toggleCommentTextareaRequired( selectedRating );
} );
}
},
handleBodyClassByRating( rating ) {
if ( rating < this.minRating ) {
document.body.classList.remove( 'tasty-recipes-selected-minimum-rating' );
return;
}
document.body.classList.add( 'tasty-recipes-selected-minimum-rating' );
},
toggleCommentTextareaRequired( rating ) {
const commentTextarea = document.getElementById( 'comment' );
if ( ! commentTextarea ) {
return;
}
if ( rating {
window.TastyRecipes.staticTooltip.changeMessage( response.data.message );
window.TastyRecipes.staticTooltip.show();
this.updateAverageText( response.data, recipeCardElement );
this.maybeFillCommentForm( response.data );
// Hide the tooltip after 5 seconds.
setTimeout( () => {
this.maybeResetTooltip( recipeCardElement, response.data, rating );
}, 5000 );
},
() => {
this.resetTooltip( recipeCardElement );
}
);
},
updateAverageText( data, recipeCardElement ) {
if ( ! data.average ) {
return;
}
this.setRatingPercent( data );
if ( ! data.count ) {
return;
}
const quickLink = document.querySelector( ‘.tasty-recipes-rating-link’ );
if ( quickLink ) {
this.setTextInContainer( quickLink, data );
this.setPartialStar( quickLink );
}
const cardStars = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
cardStars.dataset.trDefaultRating = data.average;
this.setTextInContainer( recipeCardElement.querySelector( ‘.tasty-recipes-rating’ ), data );
},
setTextInContainer( container, data ) {
if ( ! container ) {
return;
}
if ( data.label ) {
const ratingLabelElement = container.querySelector( ‘.rating-label’ );
if ( ratingLabelElement ) {
ratingLabelElement.innerHTML = data.label;
}
return;
}
const averageElement = container.querySelector( ‘.average’ );
if ( averageElement ) {
averageElement.textContent = data.average;
}
const countElement = container.querySelector( ‘.count’ );
if ( countElement ) {
countElement.textContent = data.count;
}
},
setPartialStar( container ) {
const highestStar = container.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( highestStar ) {
highestStar.dataset.trClip = this.currentRatingPercentage;
}
},
setRatingPercent( data ) {
this.defaultRating = data.average.toFixed( 1 );
const parts = data.average.toFixed( 2 ).toString().split( ‘.’ );
this.currentRatingPercentage = parts[1] ? parts[1] : 100;
if ( this.currentRatingPercentage === ’00’ ) {
this.currentRatingPercentage = 100;
}
},
setCheckedStar( target ) {
const cardRatingContainer = target.closest( ‘.tasty-recipes-ratings-buttons’ );
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( selectedRatingElement ) {
delete selectedRatingElement.dataset.trChecked;
}
const thisStar = target.closest( ‘.tasty-recipes-rating’ );
thisStar.dataset.trChecked = 1;
thisStar.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = 100;
},
maybeFillCommentForm( data ) {
if ( ! data.comment || ! data.comment.content ) {
return;
}
const commentForm = document.querySelector( ‘#commentform’ );
if ( ! commentForm ) {
return;
}
const commentBox = commentForm.querySelector( ‘[name=comment]’ );
if ( ! commentBox || commentBox.value ) {
return;
}
// Add comment details for editing.
commentBox.innerHTML = data.comment.content;
if ( data.comment.name ) {
commentForm.querySelector( ‘[name=author]’ ).value = data.comment.name;
commentForm.querySelector( ‘[name=email]’ ).value = data.comment.email;
}
},
maybeResetTooltip( recipeCardElement, data, rating ) {
if ( this.savingRating === rating ) {
this.resetTooltip( recipeCardElement, data );
}
},
resetTooltip( recipeCardElement, data ) {
window.TastyRecipes.staticTooltip.destroy();
this.savingRating = false;
// Reset the default rating.
const cardRatingContainer = recipeCardElement.querySelector( ‘.tasty-recipes-ratings-buttons’ );
if ( cardRatingContainer ) {
this.defaultRating = ( data && data.average ) ? data.average.toFixed(1) : cardRatingContainer.dataset.trDefaultRating;
cardRatingContainer.dataset.trDefaultRating = this.defaultRating;
this.resetSelectedStar( cardRatingContainer, data );
}
},
resetSelectedStar( cardRatingContainer ) {
const selectedRatingElement = cardRatingContainer.querySelector( ‘[data-rating=”‘ + Math.ceil( this.defaultRating ) + ‘”]’ );
if ( selectedRatingElement ) {
selectedRatingElement.querySelector( ‘[data-tr-clip]’ ).dataset.trClip = this.currentRatingPercentage;
selectedRatingElement.parentNode.dataset.trChecked = 1;
}
const previousSelectedElement= cardRatingContainer.querySelector( ‘[data-tr-checked]’ );
if ( previousSelectedElement ) {
const currentSelectedRating = previousSelectedElement.querySelector(‘[data-rating]’);
if ( currentSelectedRating !== selectedRatingElement ) {
delete previousSelectedElement.dataset.trChecked;
}
}
},
backwardCompFormRatingPosition() {
const ratingsButtons = document.querySelector( ‘#respond .tasty-recipes-ratings-buttons, #tasty-recipes-comment-rating .tasty-recipes-ratings-buttons’ );
if ( ! ratingsButtons ) {
return;
}
const ratingsButtonsStyles = window.getComputedStyle(ratingsButtons);
if ( ! ratingsButtonsStyles.display.includes( ‘flex’ ) ) {
ratingsButtons.style.direction = ‘rtl’;
}
if ( typeof tastyRecipesRating !== ‘undefined’ ) {
// Select the rating that was previously selected in admin.
ratingsButtons.querySelector( ‘.tasty-recipes-rating[value=”‘ + tastyRecipesRating + ‘”]’ ).checked = true;
}
const ratingSpans = ratingsButtons.querySelectorAll( ‘.tasty-recipes-rating’ );
for (const ratingSpan of ratingSpans) {
ratingSpan.addEventListener( ‘click’, event => {
if ( ratingSpan === event.target ) {
return;
}
ratingSpan.previousElementSibling.click();
} );
}
}
};
(function(callback) {
if (document.readyState !== “loading”) {
callback();
} else {
window.addEventListener( ‘load’, callback );
}
})(() => {
window.TastyRecipes.ratings.init( window.trCommon ? window.trCommon.minRating : 4 );
});