Restricting Mobile Data on Chrome OS

Chrome OS lacks many of the mobile data restriction features included in its Android cousin (i.e. there is no ability to set monthly warnings or limits). (See guide on reducing mobile data on Android). But, that is not to say mobile enabled Chromebook users are without options, just that you will have to dig for them.

When I first bought my HP Chromebook 14 and popped in the T-Mobile 200MB a month SIM I knew that keeping my data usage low would be difficult. What I did not imagine was just how quickly 200MB would get sucked up with casual browsing.

Speedtest.org rates me at 8.8MB/s. That means your 200MB can be gone in 23 seconds. Accidentally click a download link? Too late. Accidentally click a youtube video? Too late. News site auto-loads video content? Too late, and so on and so on. For a full browsing experience 200MB is simply an impossibility. But that does not make 200MB useless. You can still do plenty with 200MB (email, chat, light browsing), if you can avoid any of the above examples running away with your data.

And there in lies the problem. The options for restricting data on Chrome OS are few, but they do exist.

Site Permissions

The quickest way to limit what downloads when you’re on your Chrome device is to use an easily accessible, but often overlooked, feature of Chrome called “site permissions.”

To access, simply click the document image at the left edge of URL bar. There you will see the permissions section with a series of options for various content types and features. You can set permissions on a per-site basis, which is saved to your Chrome profile.

Site Permissions

Site Permissions

To truly control your bandwidth, you should set all the defaults to block always, but this is an obivous inconvenience for those times when you are not on mobile - and that’s where supervised users come in.

Supervised Users (Step 1: Set up your account)

Google introduced supervised users in its version 32 release. It allows you to create a local user for a device, attached, but distinct from, the Google account associated with the managing user. The primary purpose of this account type is to allow partental controls, however it is also useful for creating separate distinct profiles for Chrome OS, such as a cellular data friendly profile. To set up a profile:

  1. Sign out.
  2. Click Add user.
  3. Click Create a supervised user, then sign in to your normal Google account when prompted. (This account will ‘manage’ the supervised user’).
  4. Create a username, password, and picture for the supervised user.

You should now be able to log in to your new supervised user account from your Chromebook.

Reference Google support Create & manage supervised users for more info on supervised users.

Supervised Users (Step 2: Set default site permissions)

The next step is to lock down your supervised user account so that it loads only the minimal amount of data while you browse the web. To do this we set the global default content permissions (for your supervised user).

  1. Click the Chrome menu in the top right of the Chrome toolbar.
  2. Click Settings.
  3. Click Show advanced settings at the bottom of the page.
  4. Find “Privacy” section
  5. Click Content settings.Privacy/Content Settings Menu

    Privacy/Content Settings Menu

  6. Set content settings to “Do not allow” for all content settings. You will pretty much just run down the list and click “do not” for everything. You will be able to turn each of these back on for individual sites as needed. Here is a list of the specific settings:

    • Show all images: Do not show any images
    • JavaScript: Do not allow any site to run JavaScript
    • Allow sites to ask to become default handlers for protocols: Do not allow any site to handle protocols
    • Run all plugin content: Do not run plugins by default
    • Pop-ups: Do not allow any site to show pop-ups
    • Location: Do not allow any site to track your physical location
    • Allow all sites to show desktop notifications: Do not allow any site to show desktop notifications
    • Mouse cursor: Do not allow any site to disable the mouse cursor
    • Allow all sites to use a plug-in to access your computer: Do not allow any sites to use a plug-in to access your computer
    • Allow all sites to download multiple files automatically: Do not allow any site to download multiple files automatically
  7. Click Done.

Reference Google Support Adjust images, JavaScript, and other web content settings for more info on content settings.

Visit a few websites and you will notice that you will not see any images or other media. This will reduce the cost of each page load to only a few kilobytes, allowing you to browse the web without blowing through your 200MB.

Supervised Users (Step 3: Set individual site permissions)

The defaults set above will reduce your data usage at the cost of usability. Many sites rely on Javascript and other resources to function properly. Luckily, you can turn these features back on on a per site basis.

  1. To do so, go to a website that you would want to view normally.
  2. Click icon to the left of the URL bar. A menu will appear underneath showing each of the site permissions.
  3. Select “Allow always on this site” for each permission you wish to turn on, i.e. Javascript, images, plugins.
  4. Refresh the page.

The site permissions will be saved to your supervised user account.

Reference Google support Manage website permissions for more info on site permissions.

Supervised Users (Whitelisting/Blacklisting)

You can put additional restrictions on supervised users allowing them to either view all of the web (and selectively blacklist some sites), or to only view whitelisted sites. Those settings are managed from the Supervised user dashboard at https://www.google.com/settings/chrome/manage. Unfortunately there is no way to import a white or black list at this time, so in practice this feature is somewhat crippled.

Wrap up

Using a supervised user with strict default site permissions, you can restrict your data use for casual browsing. Selectively allowing some websites to load all content, you can still enjoy the same experience as at home on your most commonly used sites, such as Gmail.

Additional Options: Chrome Flags

Special settings in Chrome can help to reduce your mobile data use even further. Many of these features are in beta, but they are worth a look.

Enable SPDY/4

SPDY is a network protocol which allows greater compression and speed, as well as increased security. To set the flag, visit chrome://flags, then search for Enable SPDY/4. How much data this will save in practice depends on the sites you visit, since the site you are connecting to must support SPDY as well.

Data Compression Proxy

Unfortunately this setting is only available in Android and iOS at the moment. There is an extension which claims to enable it on desktop, but I have not tested it and cannot vouch for it.

I would like to see Google add this feature to Chromebooks in the future. Although there is only one Chromebook with cell service built in at the moment, any Chromebook could conceivably use a USB cell modem and would benefit from the option.

The proxy routes HTTP traffic through Google’s own servers, where it is compressed and returned to you, thereby saving you some data on every page.

UPDATE (328/2015): Google has now introduced its own chrome extension to enable data compression proxy, Data Saver (Beta) by Google.

Other Notes

I also had the thought that I should turn off automatic updating when on cellular networks. I did a bit of research and found, well, you can’t turn off automatic updates. But, Chrome already knows not to download updates on cellular connections (reference change ticket), so in practice you will not have to worry about a system update eating up your data.