Sheet Pan Chicken Fajitas

These Sheet Pan Chicken Fajitas are quick, easy and perfect for dinner on a busy night. They cook quickly and make great leftovers for lunch or dinner later in the week.

*Originally published 2/2018. Updated 2/2026*
Hi friends!
Just popping in to share my new favorite sheet pan dinner. This is an easy chicken fajita recipe made in the oven. It’s quick and easy and a fun way to change things up from taco Tuesday.
Why Sheet Pan Chicken Fajitas Work So Well
This recipe works so well because, while it does require some slicing, the actual cooking process is totally hands-off! Just dump the bag of marinated chicken, peppers and onions on a foil-lined baking sheet and stick it in the oven.
Lining the pan with foil makes clean-up a breeze and slicing the chicken prior to cooking helps the strips of chicken, peppers and onions cook evenly.
Chicken Fajita Marinade
The key to adding flavor to this recipe is a simple marinade. After combining the sliced peppers and onions in a bag, you’ll add the marinade ingredients including:
- Oil
- Lime Juice
- Chili Powder
- Cumin
- Paprika
- Garlic Powder
- Salt
- Cayenne pepper
- Cilantro
This recipe is best if the ingredients are combined and then allowed to marinate for at least and hour. But if you’re in a hurry, you can skip the marinade time and the recipe will still have good flavor. After baking, you can taste and sprinkle with additional seasonings if necessary.
How To Make This Chicken Fajita Recipe In the Oven
Making this recipe involves just a few simple steps:
- Slice the peppers and onions and add them to a ziploc bag.
- Pound or slice the chicken to an even thickness, slice against the grain into strips and add to the ziploc bag.
- Add lime juice and oil to the bag.
- Combine spices in a small bowl and stir to combine, then pour into the bag, seal and massage the bag until everything is evenly coated.
- Let the chicken and peppers marinate in the fridge for at least 1 hour, up to overnight.
- Pour the mixture onto a foil-lined bag and bake.

Are These Healthy Sheet Pan Chicken Fajitas?
Yes! This is a simple, healthy meal that’s perfect for busy nights. The chicken is a lean protein, it’s packed with vegetables and baking in the oven is a healthy cooking option.
Quick Sheet Pan Chicken Fajitas Variations
This sheet pan recipe is great because after prepping, you can have it on the table in about 15 minutes.
If you’re looking for other variations:
Sheet Pan Chicken Fajitas Using Chicken Thighs
If you prefer, you can make this recipe using chicken thighs. Just slice the chicken thighs into strips the same way you would with chicken breasts.
Chicken and Steak Sheet Pan Fajitas
If you prefer steak, you can try these Sheet Pan Steak Fajitas or these. If you like both, good news! The strips of steak and chicken cook at approximately the same rate. So if you wanted to do a combination of the two, feel free!
Chicken Fajita Quesadillas
If you’re not in the mood for fajitas/tacos you can easily make this recipe as directed, chop up the peppers and onions a bit once they’re cooked and use them as the filling for quesadillas!
Air Fryer Chicken Fajitas
If you’re looking for a way to make chicken fajitas in the air fryer, try this recipe for Air Fryer Chicken Fajitas. Or these 30 Min Air Fryer Chicken Fajitas.
Instant Pot or Crockpot Chicken Fajitas
In addition, you can also make chicken fajitas other ways – try these Instant Pot Chicken Fajitas or these Easy Slow Cooker Chicken Fajitas – the chicken will be shredded but they’ll still taste great!

How To Slice Chicken and Vegetables for Fajitas
The vegetables work best if they’re cut into slices of similar thickness. Here’s how to cut onions for fajitas.
For the chicken you want to slice it against the grain. Here’s a great article about how to cut chicken if you’re not sure how to do it.
Best Vegetables for Sheet Pan Chicken Fajitas
Bell peppers and onions are the traditional vegetables to use for fajitas. Unless you REALLY like onions, it’s best for the ratio to be roughly 3:1, peppers to onions. I typically use 3 large bell peppers and one medium onion.
Make-Ahead Sheet Pan Chicken Fajitas
You can easily make this recipe ahead of time. To reheat, you can use the microwave, a skillet or even return to a sheet pan and stick under the broiler for a few minutes.
Freezer-Friendly Chicken Fajita Prep
This recipe is great for the freezer. You can freeze it before or after you cook it.
To freeze ahead of baking, combine all the ingredients in a ziploc bag, remove any excess air and freeze. Transfer to the fridge the night before you’re ready to bake.
To freeze after baking, bake according to the recipe directions, let cool completely and transfer to a freezer-safe container and freeze.
Sheet Pan Chicken Fajitas for Meal Prep
This recipe is great for meal prep. Make as directed and store in the fridge. You can easily reheat and add to tortilla shells, quesadillas, rice bowls and more as a quick way to add protein and veggies to your meals.
Serving Ideas for Sheet Pan Chicken Fajitas
You can enjoy this recipe as directed using tortillas to hold the chicken and veggies. You could also serve the chicken and fajita veggies over rice or quinoa or as part of a lettuce-based salad.
Sheet Pan Chicken Fajitas Recipe
Here’s how you make it:
Sheet Pan Chicken Fajitas
These Sheet Pan Chicken Fajitas are quick, easy and perfect for dinner on a busy night. They cook quickly and make great leftovers for lunch or dinner later in the week.
- Prep Time: 5 min
- Cook Time: 10 min
- Total Time: 15 minutes
- Yield: serves 4
Ingredients
- 1.5 pounds boneless, skinless chicken breast
- 1 medium onion, sliced
- 3 bell peppers (red, orange and yellow), sliced
- 2 cloves garlic, minced
- 3 Tbsp oil
- juice from one lime
- 1 Tbsp chili powder
- 1 Tbsp cumin
- 2 tsp paprika
- 1 tsp garlic powder
- 1 tsp salt
- 1/2 – 1 tsp cayenne pepper, optional
- 1/4 cup cilantro, minced
- additional toppings: guacamole, pico de gallo, avocado,sour cream, tortillas, cheese, etc
Instructions
- Slice chicken against the grain into strips and place in a ziploc bag.
- Add sliced peppers and onions, lime juice and oil.
- Combine chili powder, cumin, paprika, garlic, salt and cayenne and stir to combine.
- Pour into the Ziploc bag, seal and move everything around until evenly coated. You can add the cilantro to the marinade or save to sprinkle on top after baking.
- Let the chicken and vegetables marinate in the fridge for at least 1 hour, up to overnight.
- Pour the chicken and vegetable mixture onto a foil-lined baking sheet and spread everything out evenly.
- Bake at 425 degrees F for 10-12 minutes or until chicken reaches 165 degrees F.
- Serve with tortillas and your favorite toppings.
Notes
To make it even easier, skip the spice mix and use your favorite taco seasoning!
window.trCommon={“minRating”:6,”ajaxurl”:”https:\/\/www.theleangreenbean.com\/wp-admin\/admin-ajax.php”,”ratingNonce”:””,”postId”:31005};
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 );
});
See what I mean? Piece of cake. Let me know if you guys try it!
Sheet Pan Chicken Fajitas FAQs
Can you make chicken fajitas on a sheet pan?
Yes! Sheet pans are perfect for fajitas. They’re big enough that you can spread out the sliced chicken and vegetables and allow them to all cook evenly.
What temperature is best for sheet pan chicken fajitas?
High heat is best – I use 425 degrees F but you can bump it down to 400 degrees F if you prefer.
How do you keep sheet pan chicken fajitas from getting soggy?
Don’t crowd the pan. If your pan is too small, consider splitting the mixture between two pans so that you can spread the chicken and veggies out and allow them to roast. If the pan is too crowded they will steam instead of roast, making them soggy.
Can I use chicken thighs for sheet pan fajitas?
Yes! Boneless chicken thighs work just as well as chicken breasts for this chicken fajita recipe.

Do you need to marinate chicken for sheet pan fajitas?
It’s best to marinate the chicken and vegetables for at least an hour. This will help the chicken tenderize and let the flavor develop
Are sheet pan chicken fajitas healthy?
Yes! This recipe is a great mix of lean protein and veggies. You can also choose whole wheat tortillas or serve the chicken and veggies over brown rice or quinoa. Adding beans will add even more protein and some fiber and avocado can add healthy fats.
Can you make sheet pan chicken fajitas ahead of time?
You can prep this recipe ahead of time and allow it to marinate until you’re ready to bake it. Or you can cook the recipe ahead of time and reheat in the microwave, oven or on the stovetop when ready.
Can I freeze sheet pan chicken fajitas?
Yes. You can slice the chicken and veggies, add the marinade ingredients and freeze in a ziploc bag. Or you can allow the chicken and veggies to cool completely after cooking and freeze until ready to eat.
How long do chicken fajitas take in the oven?
You only need to cook the chicken, peppers and onions for 10-12 minutes or until the chicken reaches 165 degrees F.
What’s the best way to serve sheet pan chicken fajitas?
You can serve the chicken and veggies in tortillas or add them to a bowl with rice and beans. You could also serve them over lettuce to make a salad or chop them and use to make a quesadilla.

Sheet Pan Recipes:
Want more sheet pan recipes? Try:
- Easy Sheet Pan Shrimp Quinoa Bowl
- Sheet Pan Caprese Chicken
- Sheet Pan Chicken and Vegetables
- Sheet Pan Gnocchi with Sausage
- Sheet Pan BBQ Meatballs with Sweet Potato
- Sheet Pan Italian Salmon
Enjoy!
–Lindsay–