Cache Tags

Purge what changed. Leave everything else cached

Get fine-grained cache invalidation for high-performance content delivery. No more stale content. No more full rebuilds.
Deterministic

The cache problem with most setups

Builds getting hella expensive?

Content changes often trigger full purges, slowing down delivery and hurting performance.

Cache tags let you purge only what changed, reducing rebuilds, keeping edge caches warm, and improving speed.

The best part? It's OOTB

It takes like 2 hours of integration work on your end to get everything up and running to have a perfectly cached site with instant validation. Yeah. That easy.
Give it a go →
Deterministic

How cache tags work

Deterministic, predictable, and scoped to your environment

Every response from the CDA includes an X-Cache-Tags header which represent the exact records, models, or assets involved in that query.

When you update content, we automatically purge all matching tags. Nothing more, nothing less.

Integrate

Integrate natively with any (tag-based) CDN

You don't even need to overhaul your stack

Cache Tags work natively with Fastly (via Surrogate-Key) and Cloudflare (via Cache-Tag), letting you connect purge events via webhooks, or trigger them via CLI or API.

It works with any edge-cached SSR, static site revalidation, or serverless functions that honor CDN headers.

Psst: Looking for an example?

To illustrate a combination of tools that fit into this category, we have put together a tutorial on implementing DatoCMS Cache Tags with Remix as the framework and Fastly as the cache-tags-capable CDN on top of the Remix app.
Check it out →
Speed

Cool in theory, better in practice

Built for speed. At scale. For the real world.

Less redeploying. Less stale content. Less traffic hitting your origin.

  • No full-cache invalidation
  • Keep pages fast and cached
  • Reduce rebuilds and API calls
  • Reflect changes in near real-time

Psst: Need a practical example with your framework?

Let’s talk Next.js, whose fetch() and revalidateTag() are the founding blocks for using cache tags, together with the framework inner logic. So we implemented Cache Tags on a Next.js project to show you how they work.
Check it out →
Take it for a spin

Available on all plans. Not gatekept behind $$$

We developed Cache Tags for ourselves, and we mean it when we say that they were a gamechanger. So why keep it from you?
Start using DatoCMS today
According to Gartner 89% of companies plan to compete primarily on the basis of customer experience this year. Don't get caught unprepared.
  • No credit card
  • Easy setup
Subscribe to our newsletter! 📥
One update per month. All the latest news and sneak peeks directly in your inbox.
support@datocms.com ©2025 Dato srl, all rights reserved P.IVA 06969620480