Google’s own guidance warns against artificially freshening a story when a publisher did not add significant information, and it is against its guidelines to create a very slightly updated story from a previous one, delete the old one and redirect. Changing a date is not an update.
Seasonal posts are a gift: the same query returns every year. The mistake is publishing a new post each time or changing only the year. Practical Ecommerce summarises the right approach: if an old date in a search snippet hurts clicks, the best remedy is to update the content, and never simply assign a new date to unchanged content. Here is a yearly refresh process that treats updates as real editing.
What Google Says About Dates and Fresh Content
Google Search Central’s guidance on byline dates says Google tries to estimate the date a page was published or updated, and recommends showing dates clearly with text such as “Published” or “Last updated” and using structured data consistently. Its documentation also says not to artificially freshen content when the publisher did not add significant information, and not to make a slightly updated copy of an older story, delete the original and redirect.
Search Engine Land has described how “fresh content” can help for some queries, but also how simply adding a new year to old content has been a recurring SEO temptation. The safe reading is to treat freshness as a result of genuine updates.
The Yearly Refresh Checklist
| Area | What to check | Example (Diwali post) |
|---|---|---|
| Facts and dates | Replace all dates, times and numbers; verify against a current source | Diwali 8 November 2026, muhurat window by city |
| Intro and title | Make the year and first answer current | Answer the date question first |
| Structure | Add questions people now ask; remove stale sections | Add five-day calendar and city notes |
| Examples and data | Swap in current data, prices and cases | New keyword data and spending examples |
| Links | Fix broken links, add new internal links and external sources | Link new related guides |
| Media | Replace old images and prompts with new ones | New banner and checklist image |
| Schema | Update FAQ, date and article markup | Match the visible FAQ text |
| Date display | Show “Updated” with the new date once edits are real | Updated 1 October 2026 |
When to Update, Rewrite or Replace
| Situation | Action | Note |
|---|---|---|
| Same topic, same intent, facts changed | Update in place | Keep URL and add new information |
| Intent has shifted (guide to tool, for example) | Rewrite on the same URL | Match what ranks now |
| Two similar posts compete | Merge and redirect one | See our content pruning guide |
| Topic is dead (one-off event) | Keep as archive or redirect to the best match | Do not delete without a reason |
Our guide on AI content detection is worth reading if you use AI to speed up updates, because quality and accuracy matter more than who typed the edit.
Build the Refresh Into the Calendar
Record each seasonal URL, its peak date and the planned refresh date in your content calendar. Refresh four to eight weeks before the peak, and do a quick check one to two weeks before the peak for changed dates. After the season, add a note of what worked. Track clicks and impressions for the same period each year in Search Console so you can see whether the update helped.
Before and After: What a Real Refresh Changes
| Element | Last year’s post | This year’s refresh |
|---|---|---|
| Title | Diwali Puja Muhurat 2025 | Diwali 2026 Lakshmi Puja Muhurat and Samagri List |
| Opening | Festival background | Date and Delhi muhurat in the first two sentences |
| Data | One city timing | Multi-source comparison and city variation note |
| Sections | Story and puja steps | Added five-day calendar and preparation plan |
| FAQs | Three generic questions | Six current questions with confirmed dates |
| Date label | Published 2025 | Published 2025; updated 2026 |
After the season, record clicks and impressions for the refreshed URL against last year’s numbers. That comparison is the evidence you need to justify the next refresh.




