Close Menu

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    What's Hot

    How to use Google’s new AI agents to go beyond your standard searches

    May 19, 2026

    AI slop farms are churning out anti-AI data center memes on Facebook

    May 19, 2026

    DJ Pee .Wee Sends Love to His ‘Romantics’ in a Heartfelt Shoutout

    May 19, 2026
    Facebook X (Twitter) Instagram
    Select Language
    Facebook X (Twitter) Instagram
    NEWS ON CLICK
    Subscribe
    Tuesday, May 19
    • Home
      • United States
      • Canada
      • Spain
      • Mexico
    • Top Countries
      • Canada
      • Mexico
      • Spain
      • United States
    • Politics
    • Business
    • Entertainment
    • Fashion
    • Health
    • Science
    • Sports
    • Travel
    NEWS ON CLICK
    Home»Business & Economy»US Business & Economy»Franchises Like Taco Bell Are Stealing This Strategy From Nike
    US Business & Economy

    Franchises Like Taco Bell Are Stealing This Strategy From Nike

    News DeskBy News DeskMay 19, 2026No Comments9 Mins Read
    Share Facebook Twitter Pinterest Copy Link LinkedIn Tumblr Email VKontakte Telegram
    Franchises Like Taco Bell Are Stealing This Strategy From Nike
    Share
    Facebook Twitter Pinterest Email Copy Link




    Franchises Like Taco Bell Are Stealing This Strategy From Nike

























    Skip to main content

    You’re viewing the US website. Looking for the Site edition?

    To stand out, chains are borrowing ‘drops’ from sneaker culture, serving up merch and food to restaurant fans.

    By

    Jonathan Small


    |


    edited by
    Dan Bova


    |


    May 19, 2026

    Taco Bell CEO Sean Tresvant spent 15 years at Nike, and now he’s bringing the fast-food chain a marketing trick he learned from the sneaker giant: product drops.

    The company launched Taco Tuesday Drops in its loyalty program, offering exclusive deals to members every Tuesday before the general public can access them. The strategy comes straight from sneaker culture, where brands like Nike SNKRS and Adidas Confirmed create hype through limited-edition releases.

    Now other chains are dropping their own versions left and right, according to Restaurant Business. Wendy’s just added Rewards Drops featuring limited-edition swag every Wednesday. Chipotle reintroduced monthly free food drops. Pizza Hut’s Space Jam merchandise drops sold out completely. El Pollo Loco’s Loco Friday Drops drove loyalty member frequency up 13% and spending up 17% year-over-year.

    Why does it work? Nearly half of consumers say they want access to exclusive products that are hard to obtain. When everyone has a loyalty program, artificial scarcity becomes the differentiator.

    Taco Bell CEO Sean Tresvant spent 15 years at Nike, and now he’s bringing the fast-food chain a marketing trick he learned from the sneaker giant: product drops.

    The company launched Taco Tuesday Drops in its loyalty program, offering exclusive deals to members every Tuesday before the general public can access them. The strategy comes straight from sneaker culture, where brands like Nike SNKRS and Adidas Confirmed create hype through limited-edition releases.

    Now other chains are dropping their own versions left and right, according to Restaurant Business. Wendy’s just added Rewards Drops featuring limited-edition swag every Wednesday. Chipotle reintroduced monthly free food drops. Pizza Hut’s Space Jam merchandise drops sold out completely. El Pollo Loco’s Loco Friday Drops drove loyalty member frequency up 13% and spending up 17% year-over-year.

    Why does it work? Nearly half of consumers say they want access to exclusive products that are hard to obtain. When everyone has a loyalty program, artificial scarcity becomes the differentiator.

    Jonathan Small is a bestselling author, journalist, producer, and podcast host. For 25 years, he… Read more

    ${reply?.comment_author}${reply?.eln_tier_label ? `${reply.eln_tier_label}` : ”}

    •
    ${reply?.comment_relative_time}

    ${reply?.comment_content?.trim()}

    `;
    }

    function createComment(comment, replies, isLastComment) {
    const commentListDiv = document.getElementById(PublicCommentSelectors.LIST);

    if (!commentListDiv) {
    return;
    }

    const borderClasses = isLastComment ? ” : ‘tw:border-b tw:border-slate-200’;

    const currentUser = window?.tp?.pianoId?.getUser() ?? null;
    const currentUserInitials = currentUser
    ? getInitials(`${currentUser?.firstName ?? ”} ${currentUser?.lastName ?? ”}`)
    : ”;

    const repliesHTML = replies.length ? `

    ${replies.map(buildReplyHTML).join(”)}

    ` : ”;

    const replyButtonHTML = allowsComments ? `

    ` : ”;

    const replyFormHTML = allowsComments ? `

    ` : ”;

    const commentDiv = `

    ${comment?.comment_author}${comment?.eln_tier_label ? “ : ”}

    •
    ${comment?.comment_relative_time}

    ${comment?.comment_content?.trim()}

    ${replyButtonHTML}

    ${repliesHTML}
    ${replyFormHTML}

    `;

    commentListDiv.innerHTML += commentDiv;
    }

    function displayComments() {
    // Empty out the comment list container before refreshing comments.
    const commentListDiv = document.getElementById(PublicCommentSelectors.LIST);
    commentListDiv.innerHTML = ”;

    const comments = state?.comments ?? [];

    if (!comments.length) {
    return;
    }

    // Build a threaded structure: separate top-level from replies.
    const repliesByParent = {};
    const topLevelComments = [];

    comments.forEach(comment => {
    if (comment.comment_parent === 0) {
    topLevelComments.push(comment);
    } else {
    const parentId = comment.comment_parent;
    if (!repliesByParent[parentId]) {
    repliesByParent[parentId] = [];
    }
    repliesByParent[parentId].push(comment);
    }
    });

    // Apply top-level sort order. Server returns DESC; reverse for oldest-first.
    if (state.sortOrder === ‘oldest’) {
    topLevelComments.reverse();
    }

    // Replies always show oldest first within a thread (server returns DESC, so reverse).
    Object.keys(repliesByParent).forEach(parentId => {
    repliesByParent[parentId].reverse();
    });

    topLevelComments.forEach((comment, index) => {
    const isLastComment = index === topLevelComments.length – 1;
    const replies = repliesByParent[comment.comment_ID] ?? [];
    createComment(comment, replies, isLastComment);
    });

    createCommentAvatars();
    }

    function updateCommentCount() {
    const countDiv = document.getElementById(PublicCommentSelectors.COMMENT_COUNT);
    const sortControls = document.getElementById(PublicCommentSelectors.SORT_CONTROLS);

    if (!countDiv) {
    return;
    }

    const count = state?.comments?.length ?? 0;

    // Do not display if there are no comments.
    if (count === 0) {
    return;
    }

    countDiv.innerHTML = `${count} Comment${count > 1 ? ‘s’ : ”}`;

    if (sortControls) {
    sortControls.classList.remove(‘tw:hidden’);
    sortControls.classList.add(‘tw:flex’);
    }
    }

    function displayLoader(show) {
    const loader = document.getElementById(PublicCommentSelectors.BUTTON_LOADER);
    const text = document.getElementById(PublicCommentSelectors.BUTTON_TEXT);

    if (!loader || !text) {
    return;
    }

    // Show or hide the loader.
    if (show) {
    loader.classList.remove(‘tw:hidden’);
    text.classList.add(‘tw:hidden’);
    } else {
    loader.classList.add(‘tw:hidden’);
    text.classList.remove(‘tw:hidden’);
    }
    }

    function displayError(error) {
    const errorDiv = document.getElementById(PublicCommentSelectors.ERROR);

    if (!errorDiv) {
    return;
    }

    if (error) {
    errorDiv.classList.add(‘tw:block’);
    errorDiv.classList.remove(‘tw:hidden’);
    errorDiv.textContent = `Comment submission error: ${error}`;
    } else {
    errorDiv.classList.remove(‘tw:block’);
    errorDiv.classList.add(‘tw:hidden’);
    errorDiv.textContent=””;
    }
    }

    function clearCommentInput() {
    const commentField = document.getElementById(PublicCommentSelectors.INPUT);

    if (!commentField) {
    return;
    }

    commentField.value=””;
    }

    function updateComments(comments = []) {
    state.comments = comments;
    displayComments();
    updateCommentCount();
    }

    function runCommentProcess(type) {
    if (type === ‘postComment’) {
    const comment = document.getElementById(PublicCommentSelectors.INPUT);

    if (!comment || !comment?.value) {
    return;
    }

    // Hide errors, show loader.
    displayError();
    displayLoader(true);
    }

    const data = {
    type,
    postId: 429905,
    };

    // Get a fresh nonce and either fetch comments or post comment.
    fetch(`${adminAjaxUrl}?action=ep_get_public_comment_nonce`, {
    method: ‘POST’,
    headers: {
    ‘Content-Type’: ‘application/json’,
    },
    body: JSON.stringify(data),
    })
    .then((r) => r.json())
    .then((response) => {
    // Handle errors.
    if (!response.success) {
    displayLoader(false);
    console.error(‘Error getting nonce: ‘, response?.data?.message);
    return;
    }

    const nonce = response?.data?.nonce;

    // Get comments.
    if (type === ‘getComments’) {
    getComments(nonce);
    return;
    }

    // Post comment.
    if (type === ‘postComment’) {
    postComment(nonce);
    }
    })
    .catch((e) => {
    displayLoader(false);
    console.error(`Error running comment process ${type}: `, e);
    });
    }

    function getComments(nonce) {
    const data = {
    nonce,
    postId: 429905,
    };

    // Fetch comments.
    fetch(`${adminAjaxUrl}?action=ep_get_public_comments`, {
    method: ‘POST’,
    headers: {
    ‘Content-Type’: ‘application/json’,
    },
    body: JSON.stringify(data),
    })
    .then((r) => r.json())
    .then((response) => {
    // Handle errors.
    if (!response.success) {
    displayLoader(false);
    console.error(‘Error getting comments: ‘, response?.data?.message);
    return;
    }

    updateComments(response?.data?.comments);
    displayLoader(false);
    })
    .catch((e) => {
    displayLoader(false);
    console.error(‘Error getting comments: ‘, e);
    });
    }

    function postComment(nonce) {
    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user || !user?.uid) {
    console.error(‘Error posting comment: Unauthorized. Submission aborted.’);
    return;
    }

    const comment = document.getElementById(PublicCommentSelectors.INPUT);

    if (!comment || !comment?.value) {
    return;
    }

    const data = {
    nonce,
    comment: comment.value,
    commentParent: 0,
    postId: 429905,
    uid: user?.uid,
    };

    // Post the comment.
    fetch(`${adminAjaxUrl}?action=ep_create_public_comment`, {
    method: ‘POST’,
    headers: {
    ‘Content-Type’: ‘application/json’,
    },
    credentials: ‘include’,
    body: JSON.stringify(data),
    })
    .then((r) => r.json())
    .then((response) => {
    // Handle errors.
    if (!response.success) {
    displayLoader(false);
    displayError(response?.data?.message, true);
    console.error(‘Error posting comment: ‘, response?.data?.message);
    return;
    }

    // Handle success.
    clearCommentInput();
    runCommentProcess(‘getComments’);
    })
    .catch((e) => {
    displayLoader(false);
    displayError(e);
    console.error(‘Error posting comment: ‘, e);
    });
    }

    function toggleReplyForm(commentId) {
    // Close any other open reply forms.
    document.querySelectorAll(‘.ep-reply-form’).forEach(function(form) {
    if (form.dataset.parentId !== String(commentId)) {
    form.classList.add(‘tw:hidden’);
    }
    });

    // Toggle the targeted reply form.
    const targetForm = document.querySelector(‘.ep-reply-form[data-parent-id=”‘ + commentId + ‘”]’);

    if (targetForm) {
    targetForm.classList.toggle(‘tw:hidden’);

    if (!targetForm.classList.contains(‘tw:hidden’)) {
    targetForm.querySelector(‘.ep-reply-input’)?.focus();
    }
    }
    }

    function setReplyLoading(formEl, isLoading) {
    const btn = formEl.querySelector(‘.ep-reply-submit’);
    const btnText = formEl.querySelector(‘.ep-reply-button-text’);

    if (!btn || !btnText) {
    return;
    }

    if (isLoading) {
    btnText.textContent=”Posting…”;
    btn.disabled = true;
    } else {
    btnText.textContent=”Post Reply”;
    btn.disabled = false;
    }
    }

    function displayReplyError(formEl, error) {
    const errorDiv = formEl.querySelector(‘.ep-reply-error’);

    if (!errorDiv || !error) {
    return;
    }

    errorDiv.textContent=”Reply error: ” + error;
    errorDiv.classList.remove(‘tw:hidden’);
    errorDiv.classList.add(‘tw:block’);
    }

    function clearReplyError(formEl) {
    const errorDiv = formEl.querySelector(‘.ep-reply-error’);

    if (!errorDiv) {
    return;
    }

    errorDiv.textContent=””;
    errorDiv.classList.add(‘tw:hidden’);
    errorDiv.classList.remove(‘tw:block’);
    }

    function postReply(nonce, parentId, replyText, formEl) {
    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user || !user?.uid) {
    setReplyLoading(formEl, false);
    return;
    }

    const data = {
    nonce,
    comment: replyText,
    commentParent: parentId,
    postId: 429905,
    uid: user?.uid,
    };

    fetch(`${adminAjaxUrl}?action=ep_create_public_comment`, {
    method: ‘POST’,
    headers: {
    ‘Content-Type’: ‘application/json’,
    },
    credentials: ‘include’,
    body: JSON.stringify(data),
    })
    .then((r) => r.json())
    .then((response) => {
    setReplyLoading(formEl, false);

    if (!response.success) {
    displayReplyError(formEl, response?.data?.message);
    console.error(‘Error posting reply: ‘, response?.data?.message);
    return;
    }

    formEl.querySelector(‘.ep-reply-input’).value=””;
    formEl.classList.add(‘tw:hidden’);
    runCommentProcess(‘getComments’);
    })
    .catch((e) => {
    setReplyLoading(formEl, false);
    displayReplyError(formEl, ‘Network error. Please try again.’);
    console.error(‘Error posting reply: ‘, e);
    });
    }

    function submitReply(parentId, formEl) {
    const input = formEl.querySelector(‘.ep-reply-input’);

    if (!input || !input.value.trim()) {
    return;
    }

    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user || !user?.uid) {
    openLoginModal();
    return;
    }

    setReplyLoading(formEl, true);
    clearReplyError(formEl);

    const data = {
    type: ‘postComment’,
    postId: 429905,
    };

    fetch(`${adminAjaxUrl}?action=ep_get_public_comment_nonce`, {
    method: ‘POST’,
    headers: {
    ‘Content-Type’: ‘application/json’,
    },
    body: JSON.stringify(data),
    })
    .then((r) => r.json())
    .then((response) => {
    if (!response.success) {
    setReplyLoading(formEl, false);
    displayReplyError(formEl, response?.data?.message);
    return;
    }

    postReply(response?.data?.nonce, parseInt(parentId, 10), input.value.trim(), formEl);
    })
    .catch((e) => {
    setReplyLoading(formEl, false);
    displayReplyError(formEl, ‘Network error. Please try again.’);
    console.error(‘Error getting nonce for reply: ‘, e);
    });
    }

    function setupCommentListDelegation() {
    const commentListDiv = document.getElementById(PublicCommentSelectors.LIST);

    if (!commentListDiv) {
    return;
    }

    commentListDiv.addEventListener(‘click’, function(e) {
    // Reply button: toggle the inline reply form.
    const replyButton = e.target.closest(‘.’ + PublicCommentSelectors.REPLY_BUTTON);
    if (replyButton) {
    const commentId = replyButton.dataset.commentId;
    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user) {
    openLoginModal();
    return;
    }

    toggleReplyForm(commentId);
    return;
    }

    // Reply cancel: hide the reply form.
    const replyCancel = e.target.closest(‘.ep-reply-cancel’);
    if (replyCancel) {
    const parentId = replyCancel.dataset.parentId;
    const form = document.querySelector(‘.ep-reply-form[data-parent-id=”‘ + parentId + ‘”]’);
    if (form) {
    form.classList.add(‘tw:hidden’);
    }
    return;
    }

    // Reply submit: post the reply.
    const replySubmit = e.target.closest(‘.ep-reply-submit’);
    if (replySubmit) {
    const parentId = replySubmit.dataset.parentId;
    const form = document.querySelector(‘.ep-reply-form[data-parent-id=”‘ + parentId + ‘”]’);
    if (form) {
    submitReply(parentId, form);
    }
    }
    });
    }

    function setupUserAvatar() {
    const usernameDiv = document.getElementById(PublicCommentSelectors.USERNAME);
    const userAvatar = document.getElementById(PublicCommentSelectors.USER_AVATAR);

    if (!usernameDiv || !userAvatar) {
    return;
    }

    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user) {
    return;
    }

    const fullName = `${user?.firstName ?? ”} ${user?.lastName ?? ”}`;

    usernameDiv.innerHTML = fullName;
    userAvatar.innerHTML = getInitials(fullName);
    }

    function openLoginModal() {
    window?.tp?.pianoId?.show({ displayMode: ‘modal’, screen: ‘login’ });
    }

    function setupCommentSubmitButton() {
    const submitButton = document.getElementById(PublicCommentSelectors.SUBMIT);

    if (!submitButton || state.submitCommentButtonRegistered) {
    return;
    }

    // Register a single click handler that checks auth state at click time.
    submitButton.addEventListener(‘click’, function() {
    const user = window?.tp?.pianoId?.getUser() ?? null;

    if (!user) {
    openLoginModal();
    return;
    }

    runCommentProcess(‘postComment’);
    });

    state.submitCommentButtonRegistered = true;
    }

    function setSortOrder(order) {
    state.sortOrder = order;

    const newestBtn = document.getElementById(PublicCommentSelectors.SORT_NEWEST);
    const oldestBtn = document.getElementById(PublicCommentSelectors.SORT_OLDEST);

    if (newestBtn && oldestBtn) {
    const activeClasses = [‘tw:font-bold’, ‘tw:text-blue-800’];
    const inactiveClasses = [‘tw:font-normal’, ‘tw:text-slate-500’];

    if (order === ‘newest’) {
    newestBtn.classList.add(…activeClasses);
    newestBtn.classList.remove(…inactiveClasses);
    oldestBtn.classList.add(…inactiveClasses);
    oldestBtn.classList.remove(…activeClasses);
    } else {
    oldestBtn.classList.add(…activeClasses);
    oldestBtn.classList.remove(…inactiveClasses);
    newestBtn.classList.add(…inactiveClasses);
    newestBtn.classList.remove(…activeClasses);
    }
    }

    displayComments();
    }

    function setupSortControls() {
    const newestBtn = document.getElementById(PublicCommentSelectors.SORT_NEWEST);
    const oldestBtn = document.getElementById(PublicCommentSelectors.SORT_OLDEST);

    if (newestBtn) {
    newestBtn.addEventListener(‘click’, function() {
    setSortOrder(‘newest’);
    });
    }

    if (oldestBtn) {
    oldestBtn.addEventListener(‘click’, function() {
    setSortOrder(‘oldest’);
    });
    }
    }

    runCommentProcess(‘getComments’);
    listenForPianoLogin();
    setupCommentSubmitButton();
    setupCommentListDelegation();
    setupSortControls();
    });


    Five Years Into Remote Work, Here’s What Actually Works for Businesses


    He Found a Way to 10x His Company’s Revenue Stream — And Smart Business Owners Are Doing It, Too


    Watch Out Tim Hortons — Dunkin’ Returns to Canada 8 Years After a $16.4 Lawsuit Forced Them to Leave the Country


    Wealthy People Are Investing Money Into This New Category — Are You?


    A 7-Eleven in the California Boonies Just Sold for $12 Million — The Most Expensive in California History


    He Ran a Furniture Business for 20 Years. Now He and His Son Are Taking On Smoothie King and Jamba.

    Chipotle franchise Franchisees Franchising Marketing News and Trends Nike product drops Sneaker Taco Bell Taco Tuesday wendys
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email Telegram Copy Link
    News Desk
    • Website

    News Desk is the dedicated editorial force behind News On Click. Comprised of experienced journalists, writers, and editors, our team is united by a shared passion for delivering high-quality, credible news to a global audience.

    Related Posts

    US Business & Economy

    AI slop farms are churning out anti-AI data center memes on Facebook

    May 19, 2026
    US Business & Economy

    Google redesigns Gemini AI to break down the ‘giant wall of text’

    May 19, 2026
    US Business & Economy

    Red Lobster’s ‘Endless Shrimp’ Is Back After Causing Bankruptcy

    May 19, 2026
    US Business & Economy

    Kroger gets swept up in the growing wave of Salmonella snack food recalls: Avoid this product sold in 17 states

    May 19, 2026
    US Business & Economy

    What Really Gets in the Way of Change

    May 19, 2026
    US Business & Economy

    How Stronger Privacy Laws Convinced Consumers to Share More Data

    May 19, 2026
    Add A Comment
    Leave A Reply Cancel Reply

    Don't Miss

    How to use Google’s new AI agents to go beyond your standard searches

    News DeskMay 19, 20260

    At the Google I/O 2026 keynote, the tech giant revealed new agentic capabilities in Search,…

    AI slop farms are churning out anti-AI data center memes on Facebook

    May 19, 2026

    DJ Pee .Wee Sends Love to His ‘Romantics’ in a Heartfelt Shoutout

    May 19, 2026

    IN PHOTOS | Scenes from Hope Bay mine in Nunavut

    May 19, 2026
    Tech news by Newsonclick.com
    Top Posts

    How to use Google’s new AI agents to go beyond your standard searches

    May 19, 2026

    How Kris Jenner ‘Conned’ Daughters Into Reality Show

    April 19, 2026

    Oilers lean into playoff maturity, prep for Ducks

    April 19, 2026

    OpenAI’s existential questions | TechCrunch

    April 19, 2026
    Stay In Touch
    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • Vimeo

    Subscribe to Updates

    Get the latest creative news from SmartMag about art & design.

    Editors Picks

    How to use Google’s new AI agents to go beyond your standard searches

    May 19, 2026

    AI slop farms are churning out anti-AI data center memes on Facebook

    May 19, 2026

    DJ Pee .Wee Sends Love to His ‘Romantics’ in a Heartfelt Shoutout

    May 19, 2026

    IN PHOTOS | Scenes from Hope Bay mine in Nunavut

    May 19, 2026
    About Us

    NewsOnClick.com is your reliable source for timely and accurate news. We are committed to delivering unbiased reporting across politics, sports, entertainment, technology, and more. Our mission is to keep you informed with credible, fact-checked content you can trust.

    We're social. Connect with us:

    Facebook X (Twitter) Instagram Pinterest YouTube
    Latest Posts

    How to use Google’s new AI agents to go beyond your standard searches

    May 19, 2026

    AI slop farms are churning out anti-AI data center memes on Facebook

    May 19, 2026

    DJ Pee .Wee Sends Love to His ‘Romantics’ in a Heartfelt Shoutout

    May 19, 2026

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    Facebook X (Twitter) Instagram Pinterest
    • About Us
    • Editorial Policy
    • Privacy Policy
    • Terms and Conditions
    • Disclaimer
    • Advertise
    • Contact Us
    © 2026 Newsonclick.com || Designed & Powered by ❤️ Trustmomentum.com.

    Type above and press Enter to search. Press Esc to cancel.