# “WordPress is newer” won’t clear A document sits in **WordPress is newer** and will not clear, even straight after a pull. It is not a bug in the badge — something really is rewriting the post. ## How the badge is decided Workover records the post’s modification time whenever it pushes or pulls, then re-checks periodically and when you open the project. If WordPress reports a newer time than the one recorded, the post has changed since Workover last saw it. So a badge that reappears immediately means the modification time keeps moving. ## What moves it without a human - **SEO plugins** recalculating scores or writing meta on a schedule. - **Cache and optimisation plugins** rewriting content to inline critical CSS, lazy-load images or rewrite URLs. - **Image optimisers** replacing attachments and touching the posts referencing them. - **Related-post and internal-linking plugins** injecting links into content. - **Scheduled jobs** — anything running on `wp_cron` that calls `wp_update_post`. - **Another integration** writing to the same post. The tell is timing: pull, and watch how long the badge takes to come back. Seconds means something reacted to your write. Hours, and it is a scheduled job. ## Finding it 1. **Look at the post’s revisions** in wp-admin. WordPress records who or what saved it. A revision authored by nobody, or by a plugin’s user, names the culprit. 2. **Compare the content.** If the stored content is identical and only the timestamp moved, it is meta-only — a plugin writing post meta, not prose. Harmless, but it still trips the check. 3. **Disable plugins in halves** on staging until the badge stops returning. ## What to do about it **If the rewrite matters** — a plugin genuinely changes the published content — treat WordPress as the source for that post and pull before each push, rather than fighting it. **If it is meta-only**, which is the common case, override the conflict when you push. You are not losing anything: the content is unchanged, only the timestamp moved. **If the plugin is optional**, turning off the behaviour is the real fix. An SEO plugin that rewrites every post nightly makes the sync state meaningless across the whole site, not just this document. ## Related - [Sync status and conflicts](/docs/sync-status-and-conflicts) - [How WordPress sync works](/docs/how-wordpress-sync-works) - [Pulling changes from WordPress](/docs/pulling-from-wordpress)