Migrating to Fastly's universal device detection library

In October of 2024, Fastly began making phased updates to its device detection library. Those updates continued regularly through January of 2025, after which the existing library was no longer supported.

As part of the migration process, some VCL variables were deprecated and other VCL variables began to return slightly different and often more accurate information.

This guide lists the changed variables and their example outputs, as well as the deprecated variables.

Example values for updated VCL variables

The following is a non-exhaustive list of example values for each VCL variable that was updated. Changes to some of the values may be subtle and not immediately apparent (e.g., spelling, capitalization, or word spacing may be the only thing that changed).

client.bot.name

  • Googlebot
  • Yahoo! Cache System
  • BingBot
  • Facebook External Hit
  • Cloudflare Traffic Manager

client.browser.name

  • Safari
  • Mobile Safari
  • Chrome Mobile
  • Chrome Mobile iOS
  • Chrome Webview
  • Headless Chrome
  • Firefox
  • Firefox Mobile
  • Firefox Mobile iOS
  • Microsoft Edge
  • Opera Touch
  • Opera GX
  • Reddit
  • Instagram App
  • Google Search App
  • OkHttp
  • Google HTTP Java Client

client.os.name

  • Android
  • Fire OS
  • Android TV
  • Windows
  • Mac
  • GNU/Linux
  • Ubuntu
  • Debian
  • Fedora

client.os.version

  • 10
  • X.Y.Z

client.platform.hwtype

  • smart phone
  • desktop
  • tv
  • tablet
  • console
  • smart watch
  • media player

Deprecated VCL variables

These variables will no longer return data, resulting in empty values if they are accessed. Consider removing these variables entirely or using Client Hints HTTP headers to fetch that information instead:

  • client.class.checker
  • client.class.filter
  • client.class.masquerading
  • client.class.spam
  • client.platform.manufacturer
  • client.display.height
  • client.display.width
  • client.display.ppi
  • client.class.downloader
  • client.class.feedreader
  • client.platform.ereader
  • client.platform.tvplayer