CorrectFeed

Why is my Atom feed not updating?

If your Atom feed is not updating, the problem is usually not that Atom itself is broken. It is usually one of a few specific issues:

  • the <updated> timestamp is not changing
  • entry IDs are unstable or wrong
  • a cache is serving an old version
  • the feed is not being regenerated after publishing
  • the XML is malformed enough that readers stop trusting it

Quick answer

When an Atom feed looks stale, check these first:

  1. is the top-level <updated> timestamp changing?
  2. are entry <id> values stable?
  3. is the live endpoint serving fresh XML?
  4. is caching too aggressive?
  5. is the feed still valid Atom XML?

Those five checks catch most real-world Atom update failures.

CorrectFeed can validate the live Atom output, timestamps, IDs, XML, and delivery symptoms. It cannot purge caches, run a failed publishing job, regenerate the feed, or force a reader or podcast platform to poll it; those changes belong in the host, publisher, CDN, or destination platform.

The most common reasons an Atom feed stops updating

1. The <updated> timestamp is stale

This is the most common issue.

Many Atom readers rely heavily on the feed-level <updated> timestamp to decide whether the feed changed. If you publish new content but the <updated> value stays the same, some readers will treat the feed as unchanged.

What to check:

  • the feed-level <updated> value
  • the entry-level <updated> values
  • whether the publishing system actually rewrites them on new content

2. Entry IDs are not stable

Each Atom entry should have a unique, persistent <id>.

If IDs change on every build, readers may:

  • treat entries as duplicates
  • fail to recognize updates correctly
  • behave unpredictably around refreshes

Stable IDs are a big part of reliable Atom behavior.

3. A cache is serving an old feed

Sometimes the feed is updating at origin, but the live endpoint still serves an old version.

Possible causes:

  • CDN caching
  • reverse proxy caching
  • stale ETag or Last-Modified
  • cache settings that are too aggressive

Useful check:

curl -I https://example.com/feed.atom
curl -L https://example.com/feed.atom | head

Look for whether the headers and body match the latest content.

4. The feed is not being regenerated

If the feed is generated by a build process or publishing job, the issue may be upstream.

Typical causes:

  • static site generator did not rebuild the feed
  • a publish hook failed
  • a cron or background job never ran
  • the feed file was written to the wrong place

If the XML body never changes between publishes, this is a strong suspect.

5. The Atom XML is broken enough to stop readers from trusting it

A feed can look “mostly fine” in a browser and still fail in actual readers.

Common issues:

  • invalid XML characters
  • namespace problems
  • malformed timestamps
  • missing required elements
  • ordering problems in entries

That is why validation still matters even when the feed appears to load.

A practical troubleshooting flow

Step 1: compare the live feed over time

Take two snapshots several minutes apart.

Ask:

  • did the <updated> value change?
  • did new entries appear?
  • is the same stale body being served each time?

Step 2: inspect cache headers

Check:

  • Cache-Control
  • ETag
  • Last-Modified

If they do not reflect recent changes, the problem may be cache behavior rather than feed generation.

Step 3: inspect the publish/build workflow

If the feed should have changed but did not, trace the process that creates the Atom feed.

Step 4: validate the live endpoint

Use:

If the feed is live but malformed, the issue becomes a validation problem instead of a freshness problem.

When this page should hand off to other pages

Use this page for the exact problem: the Atom feed appears stale or is not refreshing.

If the problem is actually:

Keep Atom updates reliable

To reduce future update failures:

  • regenerate <updated> values correctly
  • keep entry IDs stable
  • avoid overly aggressive caching
  • validate after deploys
  • test the real live endpoint, not just local output

FAQ

Why is my Atom feed not updating?

The most common causes are stale <updated> timestamps, unstable entry IDs, aggressive caching, XML issues, or a build or publishing process that is not regenerating the feed correctly.

Can caching make an Atom feed look stuck?

Yes. A CDN, proxy, or origin cache can serve an old Atom feed even after new content is published.

What is the first thing to check in a stale Atom feed?

Start with the feed-level <updated> timestamp and confirm the live endpoint is actually serving the latest XML.

Related help articles

Atom feed validator Validate Atom XML, update timestamps, IDs, redirects, and delivery. Reliable feed publishing Prevent caching, regeneration, timestamp, and availability failures. RSS feed invalid XML error Repair malformed XML and encoding issues shared by feed formats.

Fix RSS/Atom feeds and OPML lists

Paste a feed/OPML URL, upload a file, or paste XML — then validate and fix it.

Fix my feed / Import OPML Back to Help