Skip to main content

Blocking Adverts from the Roku Menu

UPDATE: 18 May 2013 - A new firmware (v5) has changed the way ads are handled on the Roku such that this guide is no longer relevant. 

Roku are are a pretty neat little media streaming box but one thing that I think lets them down are the trashy and mostly irrelevant adverts on the home page. Wouldn't it be great if you could get rid of these?

The ads are served by the third party ad platform, ZEDO. You can block the ads from displaying by simply blocking this domain entirely or by being more targeted and blocking the specific sub-domain serving the Roku ads. A TCPDUMP of my Roku shows that the ad images currently come from '' (although this may change).

I block them by adding a custom DNS record for this sub-domain to my home router pointing to the loopback address ( There are or course many other ways you could do this, but the best way will largely depend on your own set-up and resources.


  1. Excellent! Works like a charm. thx

  2. If you could also post the domains to block ads on Crackle and Popcornflix you'd be doing the Roku world a great service...

  3. As Crackle is a free ad supported service I don't think filtering it's adverts would be in the right spirit.

  4. Dear Paul:

    I wonder if you could be a bit more guidance on this.

    I've a CLEAR router (Hub Express), and 'm on a Mac.

    I can't find where to put the DNS record in, other than in the NETWORK PREFS on the Mac itself.

    Would you mind giving me a step-by-step, please?

    1. Sorry, I'm neither a Mac user or at Hub Express owner. Like I say there are many ways to achieve this with the info I've provided, your best bet is to get googling.

  5. Looks like an update changed to different Ad servers.
    Do you know what the new servers are?

    I used wireshark via tomato and the servers I got didn't stop the ads when I filtered them.

    Appreciate your feedback and thanks for the blog post. I was successful with blocking zedo but now they're back.

  6. Hi, trying to wireshark my roku and still having a hard time figuring out where my ads are coming from. Just trying to block a dirty Crackle ad that is showing in my main roku menu.

  7. Thank you for this post. I use OpenDNS and blocked all traffic to and my ads are gone. Now all I have is a virtual billboard that says ROKU. I have the new v5 interface and that often tasteless ad is about 10"x25" on my screen. Got rid of things I don't want my kids seeing(me either for that matter). Really appreciate it.

  8. Never mind. They came back. I have now traced the ads to one of two domains and After blocking those the ads disappear but so does the channel store. All my channels work, but I can't get to new ones. Works for me though as I have all the channels I want. Still checking...

    1. Thanks Matt, that is pretty much where I'd got to as well. I'll post something if I find a solution, but right now I'm not overly optimistic.

  9. The ads and Channel Store channel images are being served from* and the file names include a uid appended with -hd.jpg or -sd.jpg. You can filter these by using some kind of proxy or content filtering system and regex the file name but doing so will render the channel store useless.

    1. Forgot to mention that this applies to v5 of the UI. I've "fixed" my Roku3 but my older Roku with the older UI is still displaying the ads. The ads should go away when it gets the update. Unless of course Roku gets wind of this and changes things again.

  10. The older UI ads can still be blocked by following the original post.

  11. I just set up a Roku 3, and blocked and as Matt suggested, which works; the Channel Store is collateral damage. I wanted to add that this also prevents you from adding channels from the web interface to your account. You can add them on the web interface, but you won't see them on the Roku until you lift the blocking and let it phone home.

    As a workaround: Add the channel in the web interface, lift the blocking, go to Settings and do a scan for new software (you'll see the channel added), then restore the blocking.

  12. All you have to do is block and nothing else. This will block ads but allow you to have your channel store and still update.

    I deployed a project for work with 90 rokus all on one account and wanted to block ads. This method worked for me with no problems.

    1. I tried blocking - and I still have ads on Roku3.

  13. Guys, I have traced new ads to be coming from Akamai domain. Roku has changed the way they’re hosting advertisements. So far it appears as they are constantly rotating IPs from where the ads come from.

    Here is an example from Wireshark capture:
    HTTP GET /images/20140829101524-FA_2014_APS-RedOaks_Roku3_HD_350x490._V344320249_-hd-hd.jpg HTTP/1.1

    So far I have traced the ads to be coming from following IPs which can be blocked on the router…not sure however if this will change in future but so far it’s been working.

  14. Just an FYI, blocking inbound and outbound to "" does block the large ad in the menu interface on the right side in the latest software.

    After you block it, you have to wait, as the device seems to be caching the last ad. After the block happens the channel list also works, however it takes a long time to load. Mine takes 20-30 seconds on a Roku 3. I tried updating from the system menu and that also appears to be working, however no updates have actually came through so I can't say for sure.

    I have added channels from the channel list and it has worked with the block.

    After the last ad expires, the spot for it will be filled with a grey backdrop that says Roku on it. Anyway for people who like specifics I blocked;

    Inbound Any protocol Any port
    Outbound Any protocol Any port

    You can probably get away with only blocking outbound, but I haven't had time to try it.

  15. Thanks for the info !


Post a comment

Popular posts from this blog

Raspberry Pi A2DP Bluetooth Audio Receiver

I wanted to use a Raspberry Pi to act as a Bluetooth audio receiver or my Hi-Fi so that I could connect a phone/tablet easily to some proper speakers wirelessly. Rather than reinventing the wheel 'kmonkey' has already achieved most of what I set out to do over here; check this out first.

The only issue now is the manual intervention needed to connect up a new Bluetooth source to the output sink. I initially created a simple bash script to poll pulseaudio (every 5 seconds) and run the necessary commands as and when a new device is connected. You can see the script here and all the pertinent commands are explained over in kmonkey's blog. This is all good, but will need to be run manually using something like,

# nohup ./bt_audio_attach &

This is a bit rubbish and you'll be pleased to know there is a better way to get this done, UDEV!

Over at the Raspbery Pi forums  there's some discussion on using UDEV scripts to automate this process entirely. Initially I had…

Moodle on Centos or Red Hat 7 (with SELinux!)

Why the need for another 'Installing Moodle' guide? Two reasons, Systemd and SELinux.
The steps are presented as a Bash script, which may be run on a virgin system, installing a complete working Moodle stack in one go, including enforcing SELinux.

In addition to the absolute basics it also includes adding ClamAV virus for file uploads and Memcached for sessions and 'MUC'.

It does not cover any extras you will need to get your site up to production, e.g. securing your database or updating your virus definitions automatically. Neither does it do any extra PHP configuration (upload limits, execution time etc.) or any extra complexities that might be desirable. For all of this you should goto