Cloudflare Docs
Speed
Speed
Edit this page on GitHub
Set theme to dark (⇧+D)

Prefetch URLs

URL prefetching means that Cloudflare pre-populates the cache with content a visitor is likely to request next. This setting — when combined with additional setup — leads to a higher cache hit rate and thus a faster experience for the user.


​​ Availability

FreeProBusinessEnterprise

Availability

NoNoNoYes

​​ Setup

For Cloudflare to start prefetching URLs, you will need to enable the feature and include a list of URLs to prefetch.

​​ Enable Prefetch URLs

To enable Prefetch URLs in the dashboard:

  1. Log in to your Cloudflare account and go to a specific domain.
  2. Go to Speed > Optimization > Content Optimization.
  3. For Prefetch URLs, switch the toggle to On.

To enable or disable Prefetch URLs with the API, send a PATCH request with the value parameter set to your desired setting ("on" or "off").

​​ Choose URLs to prefetch

After you enable the feature, you also need to indicate which URLs Cloudflare should prefetch.

To do this, include a Link HTTP response header pointing to a manifest file with the rel="prefetch" attribute and then serve the manifest file with text/plain as the Content-type response header.

Example HTTP response header:
Link: <http://www.example.com/manifest.txt>; rel="prefetch"

Example manifest.txt:
/static/fetch1 //other.example.com/fetch2 http://another.example.com/fetch3

The manifest file should contain URIs, protocol-relative URLs or full URLs, separated by new lines. These files must be on your websites that are on Cloudflare. If you reference HTML pages, only the HTML page itself will be pre-fetched - any sub-requests from that HTML will not be fetched unless they are also defined explicitly in your manifest.

​​ Prefetch files limits

The prefetch files limits are the following:

  • The maximum number of manifest files is 16.
  • The maximum number of files per manifest file is 1024.
  • A manifest file has a size limit of 1 MB.

​​ Limitations

  • Cloudflare will only prefetch files listed in the manifest file if the resources are those cached by default.

  • Prefetch is not compatible with the custom cache key configuration. For more information, refer to Cache Key limitations.