In The Family
How to Pitch TASTE!
giftguide_spot_FINAL.jpg (3)

Update: Please note that we are booked with stories through May, and will be accepting new pitches beginning July 1. Please send then. Thank you.

So you want to pitch a story? Great! We’d love to hear from you. Stories we are looking for:

Food Culture: Trends—Past, Present, and Future
How did we get to this moment in food history, and what can it teach us about our culture in a deeper way? These stories are sharp examinations of current trends, how we live and eat, and how we got here. But they’re also stories about yesterday and tomorrow—where we have been and where we are going. These stories tap into the zeitgeist with curiosity and a strong, unpretentious opinion. Examples: Hasselback Everything. The Fake Rolex of Canned Foods. The Great Regression. Caul Me by Your Name. Everyone Who Invented the Everything Bagel. What Ever Happened to Sun-Dried Tomatoes? Remember Chilean Sea Bass? Konbi Has a Secret Croissant Machine. What Your Local Costco Say About You. Raspberry Vinaigrette Changed the Way We Salad. Sliders Slide Back In. You’re Invited to Join the Cult of Dace. The Bo Ssäm Decade.

Food Culture: Personal
Food culture moves quickly, and in a noisy media landscape many important stories are either overlooked or not told at all. Culture stories with a personal angle zoom in on an issue or topic that’s gone unexamined; they’re written with both a clear point and a point of view. Examples: Let’s Call It Assimilation Food, The Best Moon Milk Recipe? To Drink Something Else. Samin! Your Pastry Dough Recipe. Do You Eat Dog? The Pickled Cucumbers That Survived the 1980s AIDS Epidemic. Permission to Cook Normal Food.

Cooking: Taking a Stance
Recipes, as well, should always have a clear point and a point of view. These shorter, thematic, recipe-driven stories feature one to three recipes and offer up critical home-cooking advice. Examples: Go On, Get the MSG. Focaccia Is a Mood. A Cake to Snack On (and On and On). Your Freezer Makes the Best Jam. Everyone Should Own a Cooking Torch. Za’atar on Everything. Soup Mix Is a Real Seasoning. Things Chefs Do That You Should Not Do.

Cooking: Surprise!
An unexpected twist is as essential to a thrilling movie plot as it is for cooking features. We covet stories that are driven by a surprising ingredient substitution or cooking technique—backed up with sourcing from professional chefs and home cooks alike. Examples: Precut Fruit Can Be Your Friend. Let Them Steam Cake. New Bun on the Block. Choosy Noodles Choose Jif. Don’t Throw Out The Leek Greens. Cauliflower. Under a Brick. Stir-Fry Your Potatoes, Scramble Your Mind. Fish Sauce Caramel Is the New Salted Caramel. The Maldon Salt of Sweets.

Cooking: Short, Exciting Recipes
Sometimes all we need is a recipe to speak for itself. We seek inventive, clicky, 150- to 300-word recipes that, while performing well on social channels, have a unique point of view. We book recipes one to two months out, so pitches should consider seasonality. Pitches that feature an interesting technique, highlight a little-known point of origin, or debunk a myth are welcome. Examples: Fruit Sandos. Ketchup-Fry Your Rice. Leeks, Bacon, Wok. Apple Cake That’s Mostly Apples. Tomato Jam on Everything. A Cranberry Pie That Takes the Cake. Got Saltines? Make Fire Crackers.

Also see our top stories from: 201920182017

Stories we are not looking for: 

  • Restaurant coverage for the sake of trendiness. (“The best 15 places to eat in Houston right now.”) We love restaurants. We love Houston. But TASTE does not do city guides or of-the-moment dining recommendations.
  • Personal narratives based upon access or privilege. (“I hunted for black truffles and then had the most amazing lunch with the most amazing boutique hotelier, and here’s the recipe.”)
  • No super forced time pegs (“It’s time to bake with leftover Halloween candy!”) or pieces related to food holidays.
  • No food festival coverage or fish stew recipes from that Caribbean hotel press trip you took.
  • No obscure brand or maker profiles.
  • Burning Man is always off the table.

So what does a TASTE pitch look like?
We’re most interested in your well-reasoned idea. A story with a strong point of view that is backed by clear reporting and/or supported by proven expertise. We don’t care too much about where you’ve been published, where you live, how old you are, or whether you hold an English/journalism degree, let alone if you went to college. But we do want to know why you are qualified to write this story. And if we don’t know you, we’d like to see some of your work. Links are great. The pitch should outline the story in detail, with specifics. For us, the excitement comes from not just colorful copy but substance to back it up. A wise turn of phrase is not a substitute for detailed observation and reporting. If you are pitching a feature that involves recipe development or sourcing from chefs, clips of similar work are required.

Photographers and illustrators: Hello!
We are always on the hunt for photo and illustrator talent, and we assign lots of work each month. If you feel that your style is a match for ours, or that your style should be a match for ours, send us a link to your portfolio as well as editorial clips. If you don’t have editorial clips, don’t worry! They are helpful, but not required. And if you are a photographer who can also prepare and style food, please let us know.

Where to send pitches
Send an email with the pitch pasted in the body, no attachments. Please include samples of relevant work. It would be nice if “pitch from freelance writer” could be incorporated into the email subject line. We don’t want to miss it. Send to both:

Anna Hezel ahezel@tastecooking.com
Matt Rodbard
mrodbard@tastecooking.com

TASTE

TASTE is an online magazine written for people who love to cook at home and enjoy reading about approachable recipes, popular and emerging ingredients, and stories reported from the frontlines of today’s quickly moving food culture.

[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://www.tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>
[email_signup id="3"]
<div class="email-subscribe exp-subscribe subscribe"> <div class="alert alert-success exp-success ga-etembed-success" style="display:none;"> Great! You've signed up successfully! </div> <div class="alert alert-danger exp-error" style="display:none;"> We are experiencing an error, please try again. </div> <form name="subscribe" id="email-signup" class="email-signup-form" action="https://www.tastecooking.com/wp-admin/admin-ajax.php" method="POST" target="_top" data-event-assigned="false"> <fieldset class="form-group form-inline email-submit-group"> <label for="email-address" class="sr-only">Email Address</label> <input id="email-newsletter" type="email" placeholder="your@email.com" class="email-newsletter text email form-control" name="email" value=""> <button type="submit" value="Subscribe" name="subscribe" class="btn btn-primary email-submit-btn ga-etembed-success"> <i class="fa fa-envelope"></i> Subscribe </button> </fieldset> <small class="exp-small terms" style=""> By clicking Subscribe, I acknowledge that I have read and agree to the Penguin Random House <a href="http://www.penguinrandomhouse.com/privacy/" target="_blank">Privacy Policy</a> and <a href="http://www.penguinrandomhouse.com/terms/" target="_blank">Terms of Use</a> and agree to receive news and updates from TASTE and Penguin Random House. </small> <fieldset class="field-group checkboxes" style="display:none"> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50501,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook General</strong></span> </label> </div> <div class="checkbox"> <label> <input type="checkbox" name="programs[]" value="505,50502,1" class="exp-checkbox" checked="checked"> <span><strong>Tastebook Promo</strong></span> </label> </div> </fieldset><!-- /.checkboxes --> <input type="hidden" name="data_acq_code" value="TASTE_POPUP_STATIC_ONGOING" /> <input type="hidden" name="data_programs" value="50501|505,50502|505" /> <input type="hidden" name="form_id" value="3" /> <input type="hidden" name="partner" value="" /> <input type="hidden" name="action" value="crown_email_signup_submit" /> <input type="hidden" name="ref_url" value="" /> </form> </div> <script> jQuery(document).ready(function () { var unassigned_forms; setInterval( function() { //Check for unassigned forms var forms = jQuery( '.email-signup-form' ); unassigned_forms = false; forms.each( function( index ) { if ( jQuery( this ).attr( 'data-event-assigned' ) === 'false' ) { unassigned_forms = true; } }); if ( unassigned_forms ) { forms.off( 'submit' ).on( 'submit', function ( e ) { forms.attr( 'data-event-assigned', 'true' ); e.preventDefault(); // Basic email validation var email = jQuery(e.target).find('.email-newsletter').val(), valid_email = false, groupEl = jQuery(e.target).closest('.email-subscribe'); if ( !!email && typeof(email) === "string" ) { var email_array = email.split('@'); if ( email_array.length === 2 ) { if ( email_array[1].split('.').length > 1 ) { valid_email = true; } } } if ( valid_email ) { jQuery('.alert-danger').hide(); // Show loading gif groupEl.find('.email-signup-form').hide(); groupEl.find('.email-submit-loading').show(); // Populate ref_url jQuery(this).find('input[name="ref_url"]').val(window.location.href); // Generate Payload var payload = jQuery(this).serializeArray(); jQuery.ajax({ url: jQuery(this).attr('action'), type: 'POST', data: payload, success: function (data) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display success msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-success').show(); jQuery(e.target).parent().find('#downloadbtn').show(); }, fail: function (err) { // Hide loading spinner groupEl.find('.email-signup-form').show(); groupEl.find('.email-submit-loading').hide(); // Display failure msg var target = jQuery(e.target); jQuery(e.target).hide(); jQuery(e.target).parent().find('.alert-danger').show(); } }); } else { groupEl.find('.alert-danger').html('Please enter a valid email address.').show(); } }); forms.off( 'keypress' ).on( 'keypress', function ( e ) { if ( e.which === 13 ) { e.preventDefault(); jQuery( this ).submit(); } }); } }, 100); }); </script>