How is Roku winning the streaming wars?

September 2, 2020

September 15, 2020
The Hustle

We’re entering vacation day #3 for Brad — AKA The Hustle’s Head of Content, AKA the “no fun” police — and it’s total mayhem over here. Our Cheeto-encrusted fingers are rattling out typos with reckless abandon. Words have lost all meaning. Who are we?

The Big Idea

Why Facebook is threatening to block Australians from sharing news

The Australian government announced plans to roll out a media law that would force “digital platforms” (e.g., Google and Facebook) to pay publishers for the content they provide.

Now, Facebook is threatening to block the sharing of news in Australia.

Australia wants to support new media, but the process is messy  

Tech analyst Ben Thompson combed through the draft regulation written by the Australian Competition & Consumer Commission (ACCC) and highlighted a few of its finer points. The law:

  • Defines “digital platforms” in a way that only encompasses Facebook and Google (likely because they have the most $$$)
  • Aims to address what it calls a “bargaining power imbalance” between digital platforms and publishers
  • Declares that these platforms would have to give publishers a 28-day heads-up on any algorithm changes that could affect referral traffic to news

Thompson calls the law a “shakedown” that is full of bad ideas. But this isn’t to say that a law like this has no merit: the value of journalism — particularly on platforms plagued by misinformationshould be recognized and protected. 

News isn’t a huge revenue driver for these digital platforms

Media researcher Rasmus Kleis Nielsen notes that news makes up <5% of time spent online, and uses that as a rough estimate for Facebook and Google. These platforms depend more on user-generated content (e.g., Tiger King memes and staged vacation photos) than journalism.

If public officials want to support news, Nielsen suggests alternate solutions, like subsidies for private media and better resources for nonprofits. 

Governments versus Big Tech is the new norm 

Australia seems to be taking a page out of the playbook of the EU, which unilaterally set a major law (GDPR) and expected Big Tech to comply.

There’s one big difference there: the EU is a huge market (440m+ people; $15.6T GDP) and Australia — bless its soul — isn’t (25m; $1.4T). 

And even with its size and clout, the EU has failed to make Big Tech pay publishers.

Share on Facebook Share on Twitter Send as email to a friend View on our website
  • Walmart+, the much-hyped Amazon Prime competitor, is arriving on September 15.  
  • The publishing platform Medium is totally gigantic. Over the last 3 months, the company says its sites have racked up 1.25B views
  • Meet Telegrass, the new hub of the digital black market.
  • Carhop dining — a 1950s staple where waiters serve you dinner in your vehicle — is making a comeback.
  • Or if you’d prefer to skip the car, that’s cool too. In Abuja, Nigeria, anyone with wanderlust can eat their swanky meals in an eatery designed to look like an airplane
  • BONUS: Netflix is making some content free, so the next time your freeloading friends ask for your password, you can tell them to kick rocks and send them here
Brain Freeze

Is ice cream the next big celebrity product?

Please welcome Selena Gomez, ice cream entrepreneur. 

Last week, the pop star dropped a new line of pink vanilla ice cream called Cookies & Cream Remix, in tandem with a promotional song titled “Ice Cream.” 

Celebrity brands are only getting bigger 

In recent years, we’ve seen some whopper $ signs attached to celebrity-launched brands:

  • George Clooney sold his tequila company for $700m (+ another $300m based on performance) in 2017.
  • Ryan Reynolds just sold his gin brand for $335m (+ $275m based on performance).
  • Jaden Smith’s Just Water has been valued at $100m.
  • Post Malone’s new rosé has been selling out everywhere.

Gomez isn’t the only celeb to jump on the icy treat train: Showtime’s Desus & Mero recently linked up with the chain OddFellows to create a bunch of new flavors, including something called “Baconeggncheese” (hard pass).

Why ice cream?

Stacy Jones, who runs the marketing agency, Hollywood Branded, tells The Hustle that launching a celeb product is all about fit.

For celebs like Gomez, there are untapped opportunities in rolling out palatable products for younger audiences. You really have to work hard to make ice cream offensive.

That said, it can be done: RIP, Ben and Jerry’s Schweddy Balls.

Share on Facebook Share on Twitter Send as email to a friend View on our website

This ecommerce game-changer was built specifically for brands like Glossier, ColourPop and Native Deodorant

In the ecomm world, things move fast.

…well, except for the post-purchase experience. 

That hadn’t changed in 20 years — until a fancy (and free) tool called Route came along. Route injects new life into brands’ customer experience thanks to forward-thinking features like:

  • Visual Tracking™ that allows customers to keep eyes on their orders
  • Amazon Prime-like support for order issues
  • Real-time delivery notifications 

The end result? Net profits up (+11.4%), customer engagement higher than ever (+126%), and “where’s my order?!?” inquiries down (-45%). 

Route’s free tool supports over 63,000 online retailers in 193 different countries. What is yours waiting for?

Follow the Route →
Streaming Wars

A below-the-radar winner in the streaming wars: Roku

The streaming battlefield is a land of giants: Apple ($2.3T market cap) Amazon ($1.8T), Netflix ($245B), Disney ($241B), AT&T ($210B), and Comcast ($206B) are all in the ring.

Valued at only $22B, Roku is a relative minnow. But the company has become a “major gatekeeper” in the premium streaming space. 

In recent negotiations with these content kings, Roku essentially dropped every company’s dream line: You need us more than we need you.

How did this happen?

Cable companies have traditionally been the gatekeepers of premium content. But Roku crashed the party in 2008 with its ubiquitous sticks and app that enabled users to stream online media on their TVs.  

Roku now boasts 10k+ channels and 43m total active accounts — more than any US pay-TV provider.

Bolstered by pandemic binge-watching, the company hit 14.6B hours of streaming (+65% YoY) during Q2 2020.

Roku sells its hardware at a loss 

In 2019, Roku took a loss of $60m on revenue of $1.1B — largely due to its hardware costs. But the company’s services business (ads and subscriptions) now account for ~70% of its revenue. 

One analyst tells Variety that Roku’s pivot from hardware to services is something that you “almost never see in tech.” That’s probably as rare (but not nearly as satisfying) as telling streaming giants that you don’t “need” them.

Share on Facebook Share on Twitter Send as email to a friend View on our website

The big business of twinfluencers

Armie Hammer playing both of the Winklevosses (Winklevi?) in The Social Network feels a bit quaint now.

Today’s twins are launching their own twin-focused clothing lines, syncing up their pregnancies, and parlaying their millions of followers into massive sponsorship deals

Have we reached a twin peak? 

Big brands like PepsiCo and L’Oréal are vying to work with so-called twinfluencers — in large part, because they get a marketing twofer. 

That is, they can promote multiple products, or different aspects of the same product, in one post.

And this twincession is global: twinfluencers are taking over France, Zimbabwe, and Australia. In India, one duo that goes by Chinki Minki has spun 3.4m+ Insta followers into partnerships with Mountain Dew and Maybelline.

Can’t tell those twinfluencers apart? That’s the point.

Why are twinfluencers so hot right now? For those of us who grew up on The Suite Life of Zack & Cody, The Parent Trap, and Mary-Kate and Ashley Olsen, it’s partly driven by nostalgia.

But there’s also a “science” to it: the more similar twins look, the more us normies love them. According to the Economic Times, “A lot of time and effort goes into ensuring they look identical — by wearing the same outfits, maintaining the same hairstyle.” 

If one twin puts on or loses a few pounds? India’s Chinki Minki says the other also has to. 

Share on Facebook Share on Twitter Send as email to a friend View on our website
Get the report →

Full Stack Marketer, Follow Up Boss: This fast-growing real-estate SaaS company has a hot need for a multi-talented marketer.  

Senior Growth Manager, Hometime: If you know how to put the fun in funnel (while also driving growth, obvi), this one’s for you. 

Social Media Manager, Tile: Are you a social media maestro? Tile needs a pro to plan social campaigns and run audience insight tests.

Sales Development Representative, Smartling: The language-focused SaaS company seeks a focused sales rep to charm the socks off high-potential prospects.  

Community Marketer, Podia: This brand-new role is a tasty combo of community engagement, partnership management, and content promotion.

See more →
Ambassador Rewards

Refer coworkers, get exclusive Hustle gear

Step 1: Peek our sweet, sweet rewards

Step 2: Copy your referral link below

Step 3: Share your link across social media and beyond

Step 4: Collect rewards, rinse & repeat

Share The Hustle →
How did you like today’s email?

hate it


love it
Today’s email was brought to you by Michael Waters, Bobby Durben, Caroline Dohack and Trung Phan.
Editing by: Zachary “Aussie rules” Crockett, Axel Hausen (German Interpreter).

Facebook Youtube Instagram Trends
251 KEARNY ST. STE 300, SAN FRANCISCO, CA 94108, UNITED STATES • 415.506.7210 Never want to hear from us again? Break our hearts and unsubscribe.
The Hustle

Get the 5-minute roundup you’ll actually read in your inbox

Business and tech news in 5 minutes or less

100% free. We don’t spam. Unsubscribe whenever.


How'd Bezos build a billion dollar empire?

In 1994, Jeff Bezos discovered a shocking stat: Internet usage grew 2,300% per year.

Data shows where markets are headed.

And that’s why we built Trends — to show you up-and-coming market opportunities about to explode. Interested?

We’re shooting our shot…

Start your mornings with The Daily.

Get the freshly baked 5-minute newsletter every day except Saturdays.

It’s filled with the most interesting stories on business, tech, and the internet.

And written for innovators of every industry. Sign up for the news that slaps.

If you don’t like it, unsubscribe any time. Privacy policy.

[email-submission-form redirect-to-home="true" button-text="Join Free" include-trends-opt-in="true" id="main-signup-form" fail-url="" success-url="" default-source="thehustleco" default-campaign="home"]
<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 setHiddenFieldValue(wrappingDiv, searchParams, className, utmName, cookieName, defaultValue) { var el = wrappingDiv.getElementsByClassName(className)[0]; var existingVal = el.getAttribute('value'); 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'); wrappingDivs.forEach(wrappingDiv => { var sp = new URLSearchParams(; setHiddenFieldValue(wrappingDiv, sp, 'funnel-source', 'utm_source', 'funnel_source', 'thehustleco'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-campaign', 'utm_campaign', 'funnel_campaign', 'home'); setHiddenFieldValue(wrappingDiv, sp, 'funnel-medium', 'utm_medium', 'funnel_medium', ''); 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('funnel_error_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; = ''; } }); if (false) { initCaptchaFormV2(); } } function initCaptchaFormV2() { var v3RecaptchaResponseEl = document.getElementById('recaptcha-response-v3'); v3RecaptchaResponseEl.parentNode.removeChild(v3RecaptchaResponseEl); var wrappingDiv = document.getElementById('main-signup-form'); var subForm = wrappingDiv.getElementsByClassName('email-submission')[0]; var captchaVersion = document.createElement('input'); captchaVersion.class = 'g-recaptcha hidden-input'; captchaVersion.type = 'hidden'; = 'g-recaptcha-response-v2'; captchaVersion.value = 'true'; subForm.appendChild(captchaVersion); var captchaEl = document.createElement('div'); = 'verify-your-humanity'; subForm.appendChild(captchaEl); var captchaApiScriptEl = document.createElement('script'); captchaApiScriptEl.src = ''; captchaApiScriptEl.async = true; captchaApiScriptEl.defer = true; document.head.appendChild(captchaApiScriptEl); } function appendCheckboxes() { var optInDivs = document.querySelectorAll('.trends-opt-in'); optInDivs.forEach(el => { if (el.getElementsByClassName('trends-opt-in-checkbox').length < 1) { var checkbox = document.createElement('input'); checkbox.setAttribute('class', 'trends-opt-in-checkbox'); checkbox.setAttribute('type', 'checkbox'); checkbox.setAttribute('name', 'trends_opt_in'); var label = document.createElement('label'); label.setAttribute('class', 'trends-opt-in-text'); label.textContent = "Yes, I'd like to receive updates on market opportunities before they explode from Trends by The Hustle"; el.appendChild(checkbox); el.appendChild(label);; } }) } window.addEventListener('DOMContentLoaded', (event) => { var funnel_email_cookie = getCookieValue('funnel_email'); if ( (true) && (funnel_email_cookie != null && funnel_email_cookie != '') ) { window.location.replace('/home'); } initForm(); if (true) { appendCheckboxes(); } }); </script> <div class="email-signup" id=main-signup-form> <div class="funnel-error" style="display:none;"></div> <form class="email-submission" action="" method="post"> <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"> <input class="funnel-medium hidden-input" type="hidden" name="medium"> <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=""> <input id="recaptcha-response-v3" class="g-recaptcha hidden-input" type="hidden" name="g-recaptcha-response" value=""> <input class="signup-email" type="email" name="email" placeholder="Your email address" required> <input class="email-submit" type="submit" value="Join Free"> </div> <div class="trends-opt-in"></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>