Title: LinguaDrift
Author: jrtwebsolutions
Published: <strong>September 19, 2026</strong>
Last modified: September 19, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/linguadrift.svg)

# LinguaDrift

 By [jrtwebsolutions](https://profiles.wordpress.org/jrtwebsolutions/)

[Download](https://downloads.wordpress.org/plugin/linguadrift.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/linguadrift/#description)
 * [Reviews](https://wordpress.org/plugins/linguadrift/#reviews)
 *  [Installation](https://wordpress.org/plugins/linguadrift/#installation)
 * [Development](https://wordpress.org/plugins/linguadrift/#developers)

 [Support](https://wordpress.org/support/plugin/linguadrift/)

## Description

Translation plugins are built to answer one question: _what has not been translated
yet?_ LinguaDrift answers two different ones:

 1. **What has drifted?** Someone edited the English page three months ago. The German
    version still reflects the old copy. From the translation plugin’s point of view,
    the page _is_ translated — nothing flags this.
 2. **What is wrong?** A machine translation mangled a product term, a link still points
    at the source-language page, or a placeholder got dropped. Nobody on the team reads
    the target language well enough to catch it.

LinguaDrift is an independent QA layer that sits on top of whichever translation
plugin your site already uses (WPML or Polylang in this release). **It never translates
anything. It audits.**

#### What it checks, free

 * **Missing translation** — a published source page with no translation at all.
 * **Content drift** — the source changed after the translation was last verified
   in sync. This is the core finding, and it needs a second scan to appear: the 
   first scan establishes the baseline.
 * **Untranslated content** — the target is byte-identical to the source.
 * **Placeholder mismatch** — shortcodes, `%s`, and `{{merge tags}}` that don’t 
   match between source and target.
 * **Markup mismatch** — heading structure, link counts, or image counts that diverge.
 * **Suspicious length** — a translation far shorter or longer than expected for
   the language pair.
 * **Link not localized** — internal links that still point at the source-language
   version of a page.

#### How baselines work

LinguaDrift keeps its own record of what each source/target pair looked like the
last time they were in sync, because most translation plugins don’t. **The first
scan for a language pair is a baseline scan** — it reports missing translations 
and structural issues, but not drift. Drift reporting starts on the second scan.

#### AI agents

LinguaDrift registers read-only abilities with WordPress’s Abilities API (WP 6.9
+), so agents like Claude, ChatGPT, or Copilot can check status, list findings, 
and start scans — each ability is off by default and must be explicitly enabled 
per-ability in Settings.

#### Premium

LinguaDrift Pro is a separate add-on plugin that adds AI-backed semantic quality
scoring, glossary enforcement, register/formality consistency checks, scheduled 
recurring scans, branded PDF reports, and alerts on top of everything in the free
plugin. The free plugin keeps working untouched if Pro is deactivated — scanning,
all 7 deterministic checks, and the findings dashboard are not limited in any way.

## Installation

 1. Upload the `linguadrift` folder to `/wp-content/plugins/`, or install through the
    Plugins screen.
 2. Activate the plugin.
 3. Make sure WPML or Polylang is active and configured with at least two languages.
 4. Go to **LinguaDrift  Dashboard**. It shows which translation plugin was detected
    and the languages it found.
 5. Pick a source and target language and click **Run scan**. No further setup is required—
    this works out of the box.
 6. Optional: visit **LinguaDrift  Settings** to limit which post types are scanned,
    toggle individual checks on or off, override a check’s severity, exclude specific
    post IDs, or opt in to deleting LinguaDrift’s data on uninstall.
 7. Optional: if you want AI agents (Claude, ChatGPT, Copilot, etc.) to be able to 
    query LinguaDrift through WordPress’s Abilities API, enable the specific abilities
    you want under **LinguaDrift  Settings  AI agent abilities**. Every ability is 
    off by default.

## FAQ

### Does LinguaDrift translate anything?

No. It never writes to translated content. It only reads content and writes findings.

### Why didn’t my first scan report any drift?

The first scan for a language pair establishes the baseline — the reference point
drift is measured against. Run a second scan after some time has passed to see drift
findings.

### Does this replace WPML or Polylang?

No. LinguaDrift sits on top of your existing translation plugin and audits its output.

### What happens if I deactivate WPML or Polylang?

LinguaDrift shows a notice that no supported translation plugin was detected and
stays inert. It never affects your content either way.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“LinguaDrift” is open source software. The following people have contributed to 
this plugin.

Contributors

 *   [ jrtwebsolutions ](https://profiles.wordpress.org/jrtwebsolutions/)

[Translate “LinguaDrift” into your language.](https://translate.wordpress.org/projects/wp-plugins/linguadrift)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/linguadrift/), check
out the [SVN repository](https://plugins.svn.wordpress.org/linguadrift/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/linguadrift/) by
[RSS](https://plugins.trac.wordpress.org/log/linguadrift/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * Initial release: baseline/drift detection, 7 deterministic checks, WPML + Polylang
   support, findings dashboard, CSV export, read-only AI abilities.

## Meta

 *  Version **1.0.0**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [multilingual](https://wordpress.org/plugins/tags/multilingual/)[polylang](https://wordpress.org/plugins/tags/polylang/)
   [quality assurance](https://wordpress.org/plugins/tags/quality-assurance/)[translation](https://wordpress.org/plugins/tags/translation/)
   [wpml](https://wordpress.org/plugins/tags/wpml/)
 *  [Advanced View](https://wordpress.org/plugins/linguadrift/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/linguadrift/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/linguadrift/reviews/)

## Contributors

 *   [ jrtwebsolutions ](https://profiles.wordpress.org/jrtwebsolutions/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/linguadrift/)