Workers as your fallback origin

Last updated Jun 19, 2026 If you are building your application on Cloudflare Workers, you can use a Worker as the origin for your SaaS zone (also known as your fallback origin).

How custom hostname traffic reaches your Worker

When customers point their domains to your SaaS zone (for example, mystore.customer.com CNAMEs to service.saasprovider.com), their traffic enters your Cloudflare zone. Any Worker routes configured on your zone will match this incoming traffic.

For example, if you have:

  • Your SaaS zone: saasprovider.com
  • Your fallback origin: service.saasprovider.com
  • Customer's custom hostname: mystore.customer.com (pointed to your zone via CNAME)
  • Worker route: */*

When a visitor requests mystore.customer.com, Cloudflare routes that request through your zone. The */* route pattern matches all traffic entering your zone, including traffic from custom hostnames like mystore.customer.com.

Note

You do not need to add individual Worker routes for each custom hostname. The wildcard route pattern (*/*) automatically captures all traffic entering your zone, including traffic from customer vanity domains.

Set up a Worker as your fallback origin

  1. In your SaaS zone, create and set a fallback origin. Ensure the fallback origin only has an originless DNS record:
  2. Example: service.example.com AAAA 100::
  3. In that same zone, navigate to Workers Routes.
  4. Click Add route.
  5. Configure a route to send traffic to your Worker. Choose one of the following options based on your needs:
  6. Route all traffic to the Worker (recommended for most SaaS applications):

    • Route: */*
    • Worker: Select the Worker used for your SaaS application.

    This pattern routes all traffic entering your zone to the Worker, including requests from custom hostnames (for example, mystore.customer.com) and requests to your own subdomains (for example, app.saasprovider.com). - Route all but specific routes to worker: - Route: */* - Worker: Select the Worker used for your SaaS application. - Add a second route for your zone's own hostnames with Worker set to None to exclude them.

    For example, if your zone is saasprovider.com and you want api.saasprovider.com to bypass the Worker, create an additional route api.saasprovider.com/* with no Worker assigned. More specific routes take precedence over wildcard routes. - Route only custom hostname traffic to the Worker: - Route: vanity.customer.com - Worker: Select the Worker used for your SaaS application. 5. Click Save.


Zone name restriction

Do not configure a custom hostname which matches the zone name. For example, if your SaaS zone is example.com, do not create a custom hostname named example.com.

Interaction with custom origin server

Caution

When a Worker route matches incoming traffic, the request is handled by the Worker. The custom_origin_server setting on individual custom hostnames is bypassed because the Worker processes the request before origin resolution occurs.

If you need per-hostname origin routing, implement it within your Worker using request.headers.get("host") or request.cf.hostMetadata (via custom metadata).

  • Hostname routing - Learn about advanced routing patterns, including dispatch Workers and O2O behavior.
  • Workers routes - Learn more about route pattern matching and validity rules.

Was this helpful?

YesNo

On this page

Workers as your fallback origin - 图1Docs

{"@context":"https://schema.org","@type":"TechArticle","@id":"https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/advanced-settings/worker-as-origin/#page","headline":"Workers as your fallback origin","description":"Learn how to use a Worker as the fallback origin for your SaaS zone.","url":"https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/advanced-settings/worker-as-origin/","inLanguage":"en","image":"https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/advanced-settings/worker-as-origin/og.png?v=152004ef47a578ea","dateModified":"2026-06-19","publisher":{"@type":"Organization","name":"Cloudflare","description":"One platform for your apps, agents, and workforce. Build, secure, and scale without managing infrastructure","url":"https://www.cloudflare.com/","sameAs":["https://github.com/cloudflare","https://www.linkedin.com/company/cloudflare","https://x.com/cloudflare"],"logo":{"@type":"ImageObject","url":"https://developers.cloudflare.com/logo.svg"},"address":{"@type":"PostalAddress","streetAddress":"101 Townsend St","addressLocality":"San Francisco","addressRegion":"CA","postalCode":"94107","addressCountry":"US"},"contactPoint":[{"@type":"ContactPoint","contactType":"Customer Support","url":"https://support.cloudflare.com/","availableLanguage":["English"]},{"@type":"ContactPoint","contactType":"Sales","url":"https://www.cloudflare.com/contact/","availableLanguage":["English"]}]},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}


description: API endpoints for managing custom hostnames and fallback origins. title: Common API Calls image: https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/common-api-calls/og.png?v=44363f203474bf4d


Skip to content

Documentation Index
Fetch the complete documentation index at: https://developers.cloudflare.com/cloudflare-for-platforms/llms.txt
Use this file to discover all available pages before exploring further.