Cloudflare Docs
Version Management
Visit Version Management on GitHub
Set theme to dark (⇧+D)

How it works

Version Management works through a combination of environments and versions.

​​ Environments

An environment is a place to test different versions of your zone configurations.

After you enable version management, you will have the ability to create default environments:

  • Development: Meant to validate that changes work correctly. The default traffic filters are that the cf.zone.name matches your zone name, the Edge Server IP is a specific value, and the request contains a cookie with development=true.
  • Staging: Meant to test changes before sending them to Production. The default traffic filters are that the cf.zone.name matches your zone name and the Edge Server IP is a specific value.
  • Production: Meant to hold all settings applied to your zone. You cannot edit the traffic filters - which are just that the cf.zone.name is equal to your zone’s name - and cannot delete this environment. This environment has a read-only check enabled, so versions promoted to this environment will become read-only as well.

When you create a new version, that version will be available to apply to your Development environment (or whatever environment has the lowest rank). Once you test a version in your Development environment, you would promote that version to the Staging environment and - with no issues - then promote it to Production.

To send traffic to specific environments, send requests to that environment that match the pattern specified in its traffic filters.

​​ Versions

A version is a collection of configuration settings related to your zone, such as WAF custom rules, Page Rules, and other optimization settings.

Once you enable Version Management, Cloudflare will automatically create:

  • Version Zero, think about this as the configurations of your current zone. Part of your products currently visible in the navigation are going to be displayed under Versions and the other ones under Global Settings. Once default environments are created, Version Zero is automatically deployed to them, guaranteeing no disruption in your live traffic. This Version is also permanently editable. In case you decide to disable Zone Versioning, Version Zero will become your zone again.
  • Global Settings, you can find all the settings here that are not supported by Version Management.

On the Environments page, you can create default environments for Production, Staging, and Development.

When your version is ready, you would then test and promote it through various environments until it reaches Production (or whatever your final environment is).

You can create a new version at any time by choosing to Clone an existing version, which automatically copies over configuration settings from an existing version.

Version settings are applied to zone traffic when you when you promote a version to a new environment and then send traffic to that environment that matches the pattern specified in its traffic filters.