We visited a surprisingly detailed virtual Kmart

Of all the things you can build in VR, people are flocking to a digital Kmart.

Juliet Bennett Rylah • August 2, 2022

Inflation’s impact on back-to-school shopping

Parents are worried about inflation impacting their back-to-school bills.

Juliet Bennett Rylah • July 22, 2022

Claire’s is back, and Gen Z is loving it

The ‘90s tween haven is moving beyond the mall.

Rob Litterst • July 20, 2022

Digits: Bill Gates, Prime Day, and more

Plus: Comic book jazz and Chromebook blues.

Jacob Cohen • July 18, 2022

The ever-reliable $1.50 Costco hot dog combo

Costco has never — and likely will never — raise the price of its $1.50 hot dog combo.

Juliet Bennett Rylah • July 15, 2022

Bed Bath & Beyond… bad

A roundup of what’s happening with the retail giant.

Jacob Cohen • June 30, 2022

What happens to swag from failed companies?

Where does swag go when the company dies?

Juliet Bennett Rylah • June 22, 2022

WTF is UPS doing in the metaverse?

Even UPS says it’s not sure what it’s doing there.

Jacob Cohen • May 24, 2022

Digits: TikTok meetings, babies, and more

Plus: Lobbying spend is poppin’ and teen unemployment is droppin’.

Jacob Cohen • May 9, 2022

The flower business is wilting

Problems on both the supply and demand side are plaguing florists everywhere.

Rob Litterst • May 4, 2022

Meta’s IRL store for the not-IRL metaverse

Meta’s 1st brick-and-mortar show will let customers dip a toe in the metaverse through hands-on experiences.

Juliet Bennett Rylah • April 27, 2022

Buy now, panic later

BNPL is a friendly jingle, and younger generations have taken the bait.

Jacob Cohen • March 15, 2022

Digits: Bookstores, dungeons, and Italian jewels

Plus: Bookstore sales and Francis Ford Coppola’s new movie.

Jacob Cohen • February 21, 2022

Retailers are flocking to NFTs. Why?

Different retailers are pursuing different strategies, but all of them are rooted in self-preservation.

Rob Litterst • January 21, 2022

By the numbers: Home depot, productivity tracking, mountain treasure, and more

Plus: The warehouse equation, and billionaires are… rich.

Jacob Cohen • December 13, 2021

Why the Black Friday numbers were a little bit gray

While there was 1.4% dip in Cyber Monday sales, don’t be fooled -- sales this season are through the roof.

Jacob Cohen • December 3, 2021

Retailers are telling customers to keep items instead of returning them. Here’s why

Big retailers are letting customers keep items they want to return to avoid paying for shipping.

Rob Litterst • December 2, 2021

Macy’s solution for the retail apocalypse? Selling ads.

Macy’s new advertising network is pulling in tens of millions of dollars, and could be the company’s next big revenue stream.

Rob Litterst • December 1, 2021

How Walmart is taking on Amazon

Walmart -- the $400B retailer -- is using its size to manage inflation and supply chain issues.

Trung T. Phan • November 22, 2021

The $12B wholesale unicorn taking on Amazon

Faire, a wholesale marketplace platform, raised $400m at a $12.4B valuation to help independent retailers take on Amazon and Walmart.

Rob Litterst • November 18, 2021

Why D2C brand Glossier is returning to in-person retail

D2C brand Glossier gets back into in-person retail with experiential, Insta-friendly stores.

Juliet Bennett Rylah • November 17, 2021

Can Build-A-Bear replicate the experience online?

Is building a bear fun if you do it online? Build-A-Bear bets on an interactive, digital workshop.

Juliet Bennett Rylah • November 12, 2021

By the numbers: Phony Warhol drawings, font-opolies, windowless dorms, and more

Plus: Retail battle bots and a massive Roblox outage.

Jacob Cohen • November 1, 2021

Digits: Bottlenecks, miniature toys, and a $25m shredded painting

Plus: YouTube has 1k+ people texting video creators daily, and Jennifer Gates’ pricey wedding.

Jacob Cohen • October 18, 2021

What ‘Supermarket Sweep’ tells us about changing grocery store prices

When “Supermarket Sweep” debuted in the ‘60s, you could win the Big Sweep with $300. Today, it’s over $2k of wagyu steaks and fancy honey.

Juliet Bennett Rylah • October 7, 2021

Digits: Beehive fences, squid imports, toilet paper, and more.

Plus: Burlington Stores’ wise name change and mermaids beat congresswomen.

Jacob Cohen • October 4, 2021

Amazon’s $30B+ ad business, explained

Amazon has America’s 3rd largest ad business, more than 2x the size of Snap, Twitter, Roku, and Pinterest combined.

Trung T. Phan • September 23, 2021

Dollar General wants to go upmarket with Popshelf. So far, it’s working.

Dollar General’s new store, Popshelf, offers items for $5 or less, and has been wildly successful so far, which could lead to massive expansion.

Rob Litterst • September 14, 2021

Digits: A $3.6m Spider-Man, e-cigs get smoked, and ATVs kick into high gear

Plus: Walmart braces for impact, Amazon pays Chicago for locker space, and container oligopolies are a thing.

Jacob Cohen • September 13, 2021

Join 2M+ professionals getting the Hustle daily news brief

[class^="wpforms-"]
[class^="wpforms-"]
[email-submission-form button-text="Join Free" include-trends-opt-in="true" success-url="https://thehustle.co/new-thank-you-v2/" default-source="thehustleco" default-medium="home-exit-popup" default-campaign="home-page" form-id="exit-popup-general" optinmonster-conversion="true"]
<script type="text/javascript"> var onloadCallback = function() { grecaptcha.render('verify-your-humanity', { 'sitekey' : '6LdddrcZAAAAALyttpvOqiwQGwq5BNhgDz4tMQGE' }); }; function getCookieValue(a) { var b = document.cookie.match('(^|[^;]+)\\s*' + a + '\\s*=\\s*([^;]+)'); return b ? atob(decodeURIComponent(b.pop())) : ''; } function getCookie(name) { var cookieArr = document.cookie.split(";"); for(var i = 0; i < cookieArr.length; i++) { var cookiePair = cookieArr[i].split("="); if(name == cookiePair[0].trim()) { return decodeURIComponent(cookiePair[1]); } } return null; } function setHiddenFieldValue(wrappingDiv, searchParams, className, utmName, cookieName, defaultValue) { var el = wrappingDiv.getElementsByClassName(className)[0]; var existingVal = el.getAttribute('value'); if (utmName == 'ref') { var newVal = searchParams.get(utmName) || getCookie(cookieName); } else { var newVal = searchParams.get(utmName) || getCookieValue(cookieName); } if ((existingVal == null || existingVal == '' || existingVal == defaultValue) && (newVal != null && newVal != '')) { el.setAttribute('value', newVal); } } function setHiddenFieldValueFromUtm( wrappingDiv, searchParams, className, utmName, defaultValue ) { var el = wrappingDiv.getElementsByClassName(className)[0]; if (el != null) { var existingVal = el.getAttribute("value"); var newVal = searchParams.get(utmName); if (newVal != null && newVal != "") { el.setAttribute("value", newVal); } } } function initForm() { var wrappingDivs = document.getElementsByClassName('email-submission'); Array.prototype.forEach.call(wrappingDivs,wrappingDiv => { var sp = new URLSearchParams(window.location.search); setHiddenFieldValue(wrappingDiv, sp, 'funnel-source', 'utm_source', 'funnel_source', 'thehustleco'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-campaign', 'utm_campaign', 'funnel_campaign', 'home-page'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-medium', 'utm_medium', 'funnel_medium', 'home-exit-popup'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-referral', 'ref', 'funnel_referral', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-a', 'a', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-c', 'c', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-o', 'o', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-oc', 'oc', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-e', 'e', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-f', 'f', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-r', 'r', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-t', 't', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s1', 's1', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s2', 's2', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s3', 's3', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s4', 's4', ''); setHiddenFieldValueFromUtm(wrappingDiv, sp, 'funnel-s5', 's5', ''); var error_message = getCookieValue('validate-email-message'); if (error_message && error_message.trim() != '') { var error = wrappingDiv.getElementsByClassName('funnel-error')[0]; var prev_email = getCookieValue('funnel_email'); error_message = prev_email + " is not valid. Please try again"; error.innerHTML = error_message; error.style = ''; } }); if (false) { initCaptchaFormV2(); } } function initCaptchaFormV2() { var v3RecaptchaResponseEl = document.getElementById('recaptcha-response-v3'); v3RecaptchaResponseEl.parentNode.removeChild(v3RecaptchaResponseEl); var wrappingDiv = document.getElementById('email-submission'); var subForm = wrappingDiv.getElementsByClassName('email-submission')[0]; var captchaVersion = document.createElement('input'); captchaVersion.class = 'g-recaptcha hidden-input'; captchaVersion.type = 'hidden'; captchaVersion.name = 'g-recaptcha-response-v2'; captchaVersion.value = 'true'; subForm.appendChild(captchaVersion); var captchaEl = document.createElement('div'); captchaEl.id = 'verify-your-humanity'; subForm.prepend(captchaEl); var captchaApiScriptEl = document.createElement('script'); captchaApiScriptEl.src = 'https://www.recaptcha.net/recaptcha/api.js?onload=onloadCallback&render=explicit'; captchaApiScriptEl.async = true; captchaApiScriptEl.defer = true; document.head.appendChild(captchaApiScriptEl); } function appendCheckboxes_email_submission() { var wrappingDiv = document.getElementById('email-submission'); var optInDivs = wrappingDiv.querySelectorAll('.trends-opt-in'); optInDivs.forEach(el => { el.style.display = null; if (el.getElementsByClassName('trends-opt-in-checkbox').length < 1) { var checkbox = document.createElement('input'); checkbox.setAttribute('id', 'trends_opt_in_email_submission'); checkbox.setAttribute('class', 'trends-opt-in-checkbox'); checkbox.setAttribute('type', 'checkbox'); checkbox.setAttribute('name', 'trends_opt_in'); var label = document.createElement('label'); label.setAttribute('for', 'trends_opt_in_email_submission'); label.setAttribute('class', 'trends-opt-in-text'); label.textContent = "Yes, I'd like to receive additional emails on hot business opportunities from Trends, by the Hustle"; el.appendChild(checkbox); el.appendChild(label); checkbox.click(); } }) } window.addEventListener('DOMContentLoaded', (event) => { initForm(); if (true) { appendCheckboxes_email_submission(); } }); if(typeof hp_interval == 'undefined') { var hp_interval = 0; var hp_ts = 0; var hp_try = 0; jQuery(document).ready(function ($) { hp_interval = setInterval(function(){ $('input.hp_ts').val(hp_ts); hp_ts += 1; if(hp_ts >= 30) { clearInterval(hp_interval); } },1000); $('.email-submission:not(.prevent-default)').submit(function (e) { var form = $(this); if(hp_ts < 3 && hp_try < 1) { e.preventDefault(); if (form.find('.email-form-submit-message').length < 1) { form.find('.email-form-wrap').after('<p class="email-form-submit-message" style="padding: 0em 1.5em;">Too fast! Are you a human? Try again please.</p>'); } hp_try += 1; hp_ts = 0; $('input.hp_try').val(hp_try); } }); }); } </script> <div class="email-signup" id=email-submission> <div class="funnel-error" style="display:none;"></div> <form class="email-submission " id="exit-popup-general" action="https://cms.thehustle.co/api/v1/contacts/wordpress_create" method="post" autocomplete="email"> <div class="email-form-wrap"> <input class="funnel-source hidden-input" type="hidden" name="source" value="thehustleco"> <input class="funnel-campaign hidden-input" type="hidden" name="campaign" value="home-page"> <input class="funnel-medium hidden-input" type="hidden" name="medium" value="home-exit-popup"> <input class="funnel-form-id hidden-input" type="hidden" name="form-id" value="exit-popup-general"> <input class="funnel-referral hidden-input" type="hidden" name="referral_code"> <input class="funnel-fail-url hidden-input" type="hidden" name="fail_url" value=""> <input class="funnel-a hidden-input" type="hidden" name="a" value=""> <input class="funnel-c hidden-input" type="hidden" name="c" value=""> <input class="funnel-o hidden-input" type="hidden" name="o" value=""> <input class="funnel-oc hidden-input" type="hidden" name="oc" value=""> <input class="funnel-e hidden-input" type="hidden" name="e" value=""> <input class="funnel-f hidden-input" type="hidden" name="f" value=""> <input class="funnel-r hidden-input" type="hidden" name="r" value=""> <input class="funnel-t hidden-input" type="hidden" name="t" value=""> <input class="funnel-s1 hidden-input" type="hidden" name="s1" value=""> <input class="funnel-s2 hidden-input" type="hidden" name="s2" value=""> <input class="funnel-s3 hidden-input" type="hidden" name="s3" value=""> <input class="funnel-s4 hidden-input" type="hidden" name="s4" value=""> <input class="funnel-s5 hidden-input" type="hidden" name="s5" value=""> <input class="funnel-success-url hidden-input" type="hidden" name="success_url" value="https://thehustle.co/new-thank-you-v2/"> <input id="recaptcha-response-v3" class="g-recaptcha hidden-input" type="hidden" name="g-recaptcha-response" value=""> <div class="signup-icon" style="display:none;"> <svg width="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22 6c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6Zm-2 0-8 5-8-5h16Zm0 12H4V8l8 5 8-5v10Z" fill="#848B92"></path></svg> </div> <input type="hidden" name="hp_ts" class="hp_ts" value="0"> <input type="hidden" name="hp_try" class="hp_try" value="0"> <input type="text" name="first_name" placeholder="Enter your name" value=""> <input class="signup-email" type="email" name="email" placeholder="Your email address" required autocomplete="email"> <input class="email-submit om-trigger-conversion" type="submit" value="Join Free"> </div> <div class="validate-mistake-emails-message" style="display:none;"></div> <div class="trends-opt-in" style="display:none;"></div> <div submit-success> <template type="amp-mustache"> <p class="c-message c-message--success">Thank you for subscribing.</p> </template> </div> <div submit-error> <template type="amp-mustache"> <p class="c-message c-message--failed">Your submission failed. Please try again!</p> </template> </div> </form> </div>