1.37.0
The Article structured data Unstale adds is now reserved for posts: pages no longer receive one.
1.36.0
Structured data is now an Article only, added only when your post does not already carry one, with or without an SEO plugin.
1.35.2
Redirects now work for old URLs whose slug uses non-Latin letters.
1.35.1
Fixes refreshes that Google's content filter blocked by mistake at the research step.
1.35.0
Redirects can now be added by hand, and stay correct when the post they point to is retired or unpublished.
1.34.0
A refresh that removes a link of the original post or points it elsewhere now waits for your review, even with automatic publishing on.
1.33.1
A rewrite that loses a shortcode or embed is now caught and retried at the rewrite step, before the later steps are paid.
1.33.0
Refreshes now fix weak alt text by looking at the images, add a caption where it helps, and fill an empty media library alt text.
1.32.6
A brief provider outage no longer fails a refresh, Retry stops before paying when the post changed, and enrich is no longer cut off.
1.32.5
Review screens now say what a refresh will really publish, and a few Divi and Elementor edge cases stop before spending.
1.32.4
Cost estimates follow Google's Gemini Flash rate change on January 1, 2027.
1.32.3
Activating Unstale opens the Get started screen again, instead of leaving you on the Plugins list.
1.32.2
Confirm with AI on the cannibalization screen now stops and explains why when your default model is not served, instead of failing on every group.
1.32.1
Fixes Unstale admin screens that lost their buttons and styles as soon as a refresh was waiting for review.
1.32.0
A refresh is now refused, with the reason, when your default model's AI provider is not connected, instead of quietly running on another provider's model.
1.31.0
A refresh now checks the YouTube videos in your posts and replaces a deleted or private one with a relevant video, checked before use.
1.30.2
The fact check knows today's date, so a refresh no longer swaps one outdated fact for another written from memory.
1.30.1
The publish date no longer moves when it would change the post's address, whatever date tags your permalinks use.
1.30.0
With automatic publishing on, a refresh that adds an outdated figure now waits for your review instead of going live.
1.29.4
Keeps video embeds out of the rewrite, so posts with YouTube videos no longer fail on broken embed markup.
1.29.3
Repairs the block comments a rewrite breaks most often, so long articles with many lists no longer fail after two paid attempts.
1.29.2
Refuses code samples it cannot rewrite before spending anything, and fixes the year and the publish date on SeedProd pages.
1.29.1
Fixes the layout of the model cards in Settings.
1.29.0
The publish date no longer moves when a refresh changed nothing in the text. Bulk actions on Content health now work on phones.
1.28.2
Recommended for everyone: long block posts that failed at the rewrite step since 1.28.1 now go through. Start a new refresh on those posts, not a retry.
1.28.1
Recommended for everyone: a refresh can no longer publish broken block markup, and the model no longer dates your JSON-LD.
1.28.0
Recommended on a fresh site: Get started now walks you from the provider to your first reviewed refresh, one step at a time. Pro users: update the free plugin first, then Pro 1.13.0 adds the licence step.
1.27.0
Recommended for everyone. Settings gains a Writing section, used by Unstale Pro for site-wide instructions and the quiz setting.
1.26.0
Recommended for everyone. Connecting an AI agent moves from Settings to its own Unstale > AI Agent screen. Nothing to set up again.
1.25.0
Recommended for everyone. Gemini 3.8 Flash becomes the recommended model and the default on new installs. Your site keeps the model it runs on today.
1.24.3
Recommended if you schedule refreshes in bulk: the estimate no longer says already scheduled page builder posts move to the new date when you leave them out.
1.24.2
Recommended if an AI agent drives Unstale: a refresh that reaches review while the agent cancels it now waits for you, as the approval setting says.
1.24.1
Recommended if you refresh in bulk: a selection with Elementor, Divi or SeedProd pages no longer fails at confirmation, and their cost shows before you include them.
1.24.0
Recommended if you use an AI agent: Claude Code, Codex or Hermes Agent can now find stale posts and start refreshes on your site through the MCP adapter, while approving them stays yours.
1.23.0
Recommended if you approve refreshes from the review queue: outdated facts and new figures no source confirms now show above the diff, where you decide.
1.22.2
Recommended if your posts embed widgets, videos, icons or forms: publishing a refresh no longer strips them, and a refresh that would lose one is refused instead.
1.22.1
Recommended if a refresh keeps failing with an answer cut off at the output limit on posts that embed widgets: their hidden block settings no longer reach the model.
1.22.0
Recommended if you refresh in batches: Content health can schedule a refresh for a date you choose, exclude a whole selection at once, and show the whole list on one page.
1.21.0
Recommended if you consolidate cannibalized content with automatic publishing on: a consolidation now waits for your review before it goes live. Update the free plugin first and Pro second.
1.20.2
Recommended if you publish refreshes automatically: Unstale no longer tells you a refresh waits for your review when it will not.
1.20.1
Recommended if you consolidate cannibalized content: a consolidation can no longer be lost, and the scan stops showing results from before an article changed.
1.20.0
Recommended if you consolidate cannibalized content: a consolidated group now stays on the scan until its absorbed articles are retired. Update the free plugin first and Pro second.
1.19.0
Recommended if you use Confirm with AI: a verdict that splits a group no longer reads as a confirmation of every article. Update the free plugin first and Pro second.
1.18.0
Adds the redirect layer Unstale Pro 1.7.0 needs to retire articles that compete with each other, plus a screen to undo those redirects. Update the free plugin first and Pro second.
1.17.1
Recommended if a date shortcode plugin writes the year in your posts: a refresh could fail at the last step and publish nothing.
1.17.0
Recommended for everyone. Content health gains a search box, the meta title and description now carry your SEO plugin's current-year variable, and a style edit made in Elementor while a refresh waits for review is no longer undone on approval.
1.16.0
Recommended for everyone, and needed if you refresh pages built with Elementor, Divi or SeedProd: the Restore the previous version link now works on them, and an Elementor page no longer shows the old text for up to a day after a refresh.
1.15.0
Recommended for everyone. A year that only dates your content now follows the calendar, in the text, the title and the metas, or becomes your current-year plugin's shortcode where it renders. A title changes by its year only. Unstale Pro 1.6.0 needs this version.
1.14.4
Recommended for everyone. A refresh step that fails twice in the same paid way no longer buys a third attempt that could only fail too. Failures that cost nothing keep all three tries, and a retry you start yourself always begins with the full budget.
1.14.3
Recommended for everyone, and needed if a long post keeps failing with an answer cut off at the output limit. Long posts are now split on what they really weigh, the room allowed for an answer is twice as large, and a refresh caught mid-rewrite by this update restarts cleanly.
1.14.2
Recommended for everyone. Confirm with AI, in Content cannibalization, no longer announces a working verdict as a failure, and stops losing about one verdict in seven to an answer cut short. The price shown before you click is unchanged.
1.14.1
Recommended for everyone. Confirm with AI, in Content cannibalization, no longer answers that every group no longer exists: any post saved anywhere on the site between the scan and the click emptied the list it read. It now recomputes, and finds each group by its posts.
1.14.0
Recommended for everyone. Confirm with AI, in Content cannibalization, gives real verdicts again: the answer was being cut short and read as a refusal. Content you excluded, and pages marked noindex, stay out of the scan.
1.13.0
Recommended for everyone. The settings screen now shows the refresh level you actually saved and no longer overwrites it. A level your plan locked, or a model that left the catalog, is named as the cause instead of being blamed on your AI provider.
1.12.0
Recommended for everyone. Content your SEO plugin marks noindex is no longer offered for refresh, and a new Excluded tab shows everything Unstale skips and why. Yoast SEO, All in One SEO, SEOPress and Rank Math are all read.
1.11.0
Recommended for everyone. You can now exclude a post from refreshes with one link, and take it back the same way. Popup and template types no longer show up as posts to refresh, nor as internal-link targets.
1.10.0
Recommended for everyone. A refresh now checks the figures it added itself, not just the ones your original article already carried, and the review screen lists the added ones no source confirms. No model is called when it added none.
1.9.1
Worth taking if you picked a model other than the default. When the catalog replaces a model with a newer one from the same family, your site now follows that upgrade instead of staying on the older name, and never moves to a different provider.
1.9.0
Recommended for everyone. A refresh no longer changes how your article addresses its reader: Unstale measures that voice first and holds the rewrite to it. The editor block also says up front whether the publish date will move.
1.8.3
Worth taking if your site is built of short pages, such as product sheets or single answers. Content health measured every pair against the length of a full page, so the shortest pages could not reach the mark even against an identical copy. Pairs are now measured against the shorter of the two.
1.8.2
Worth taking if your site is written in Chinese, Japanese, Thai, Lao, Khmer or Burmese. Content health found few competing posts on those sites, often none: it chose how to compare text by counting characters per word, which Chinese and Thai never trigger. It now looks at the writing system.
1.8.1
Worth taking if your site has large families of similar pages. A group of more than 25 posts sharing a vocabulary is a template, and Unstale never sends it to the AI. The screen still called it a group the AI could not confirm, which read as a verdict nobody asked for. It now says what it is.
1.8.0
Recommended for everyone. Content health now finds published posts that compete over the same topic and names the one to keep. It runs on your own text, costs nothing, and needs no AI provider. With one connected, an optional pass tells shared vocabulary from a real overlap.
1.7.0
Worth taking if Unstale never quite got started on your site. A new Get started screen lists your five stalest posts with one button to queue them all, and the cost still shows before anything is spent. Existing sites find it under Unstale, Get started.
1.6.0
Recommended for everyone. A refresh that finishes while you work elsewhere now tells you, and a published refresh can be undone in one click: text, publish date and SEO fields all go back. The posts list colours what has drifted and the Journal exports to CSV.
1.5.1
Only worth taking if you use Unstale Pro. The block under the editor then says which rule governs the post you are writing, and warns you when a rule excludes it from the automation. Nothing changes without the add-on.
1.5.0
Refreshing a post no longer means leaving the editor. A new Unstale block sits under the editor, starts the refresh and then reports every change it made, one line per change.
1.4.1
Small but worth taking. The bundled catalogue no longer expects a September price rise on Claude Sonnet 5 that was cancelled, and Unstale Pro's licence key can be entered from Settings rather than only from its own menu.
1.4.0
Recommended for everyone. Elementor, Divi and SeedProd pages refresh without a warning, All in One SEO sites finally receive the title and description they paid for, and the cost shown before a refresh on Google models is no longer about fifteen times too high.
1.3.2
Required if your site runs PHP 8.1: every earlier version stops on one of its own files there and the plugin cannot run at all. Nothing changes on PHP 8.2 and above.
1.3.1
A SeedProd page refreshed in the builder only now says so in the journal, instead of looking like a refresh that did nothing.
1.3.0
Adds SeedProd pages to what a refresh can handle, alongside Elementor and Divi. A page using SeedProd Pro blocks is refreshed in the builder and left untouched online until you save it there.
1.2.0
Fixes a bug that made Elementor and Divi pages impossible to refresh, and one that could publish a long article with a hole in the middle. Adds Elementor and Divi pages to what a refresh can handle.