Affiliate Link Integrity Checker

Description

Check your affiliate links for the failures that ordinary broken-link checks
miss.

A URL can still return 200 OK while affiliate revenue attribution is broken.
The link opens and the merchant’s page loads, but the tracking ID that tells
the merchant whose account to credit never arrives — so clicks from that page
earn nothing, and a 404 checker reports everything as healthy. This plugin
finds that class of failure:

  • the affiliate or tracking ID disappeared, or changed to another account
  • the destination changed — for example, a discontinued product page that now lands on the merchant’s home page
  • the redirect chain changed, loops or never resolves
  • a monetized link or call to action disappeared from the page
  • a money page picked up a noindex
  • the canonical URL drifted, or now points at another domain
  • the destination itself failed

What you see after a scan

An overview of every revenue path — healthy, needs attention, or revenue at
risk — with the highest-priority issue named. Each issue answers, on one
screen: what happened, why it can cost you money, what it was before, what it
is now, when it was last known good, and what to do next. Response codes and
redirect hops are there under Technical Details when you want them.

Why it is different

Alerts you can trust. A bot filter or WAF answering 403 is reported as
“automated verification was blocked”, not as a broken link. A 429 rate limit
causes a backoff, a timeout is retried, rotating click IDs are expected, and
parameter order, encoding, trailing slashes and http to https are normalized
before anything is compared. Revenue At Risk requires a reachable
destination, a known-good baseline and a consistent result across retries.

Auto Discovery. No selectors or rules to configure. Discovery reads your
stored content without outbound requests, so it scales to large sites, and
picks out what looks monetized: PrettyLinks and
ThirstyAffiliates links, rel="sponsored" links, known affiliate parameters
and networks, and calls to action on review and comparison pages. It is tuned
for precision; lower-confidence links stay as candidates.

Quick Fix for the safe cases. Where the plugin can prove from a recorded
good state exactly what a link used to be, it offers to put it back.

Safe by design

  • No account, no API key, no telemetry, no analytics, no external service.
  • The audit is read-only: discovery and every check only read your pages and store findings.
  • Quick Fix runs only when you click it. You see the exact before/after change first, press Apply yourself, and can press Undo.
  • No arbitrary content rewriting. Quick Fix can write to three things only: a vanished affiliate parameter in a link in your post content, a dropped disclosure attribute such as rel="sponsored", or the destination stored by PrettyLinks or ThirstyAffiliates for a link they manage.

How it works

  1. Discover. Press Scan for revenue paths and review the recommendations.
  2. Audit. Each protected path — page, link, redirect chain, tracking and destination — is checked against a recorded good state by eight detectors, in resumable chunks, with requests spaced out and capped per destination and per run.
  3. Act. Recheck, Quick Fix where eligible, Accept New Baseline for a change you made on purpose, Mark Expected, or export to CSV.

Detectors

  1. Revenue Element Missing — the CTA or affiliate link is no longer on the page.
  2. Destination Drift — the link now ends up somewhere else.
  3. Tracking Parameter Integrity — the affiliate ID went missing or changed account.
  4. Redirect Chain Drift — the redirect loops, or never resolves.
  5. Revenue Destination Failure — the destination is gone or erroring.
  6. Indexability Failure — a money page picked up a noindex.
  7. Canonical Drift — the canonical URL changed or points at another domain.
  8. Revenue Element Drift — the link’s wording or sponsored markup changed.

Quick Fix details

After a Quick Fix is applied the path is checked again immediately, and you
are told whether it was fixed and verified, applied but still failing, or
failed with nothing changed. Undo covers the repair most recently made to a
path; if a newer repair has since been applied, the older one is refused with
a reason rather than discarding the newer change. There is no cap.

Everything else is a guided fix (where the setting lives and which plugin
owns it) or needs review, with the reason. An affiliate ID that changed
rather than vanished, two links to the same place, a link your theme renders,
and a check that was blocked or rate limited never produce a repair.

Works with

PrettyLinks and ThirstyAffiliates are supported as first-class sources, so an
issue can say the managed link’s target changed. Neither is required; plain
affiliate links in your content work on their own.

Free, and the separate Pro plugin

This plugin is a complete affiliate link audit: all eight detectors, unlimited
revenue paths, every finding with its evidence, Recheck, Quick Fix, Accept New
Baseline, Mark Expected and CSV export. Nothing expires, nothing is capped,
and no feature waits for a licence.

A separately distributed Pro edition does a different job — Continuous Protection: scheduled monitoring, automatic re-checks of the affected paths straight after a WordPress, plugin or theme update, correlation of what changed around the time a path broke, long incident history, advanced tracking and merchant policies, bulk actions and notifications. It is not bundled inside this plugin, and this plugin works fully without it.

Privacy and outbound requests

Requests go to your own pages and to the destinations your links already
point at — nothing else. Your content, findings and affiliate IDs stay in your
WordPress installation. Addresses inside your own network (loopback, private
ranges, link-local and cloud metadata endpoints) are refused, and every
redirect hop is validated again.

Languages

Every user-facing string is translatable. Translations are hosted on
translate.wordpress.org and installed as language packs; none are bundled.

Screenshots

Installation

  1. Upload the plugin to /wp-content/plugins/, or install it from the Plugins screen.
  2. Activate it.
  3. Open Revenue Integrity in the admin menu.
  4. Press Scan for revenue paths, review the recommendations, then run the audit.

FAQ

Is this just another broken link checker?

No. A broken link checker asks whether a URL answers. This asks whether the
affiliate conditions attached to it still hold — whether your tracking ID
still arrives, whether the destination is still the page you chose, and
whether the page carrying the link is still indexable. All of those can break
while the link returns 200.

Will it flood me with false alarms?

That is the failure it is designed around. Bot filters, WAF challenges, rate
limits and timeouts are classified as verification problems and never
reported as confirmed failures.

Does it change anything on my site?

The audit does not. Quick Fix does, but only for the three targets above, only
when you trigger it, with a preview first and Undo afterwards.

Does it monitor continuously?

No. This plugin audits when you run it, and Recheck re-tests any path on
demand. Scheduled monitoring and re-checks after updates are the separate Pro
edition.

What happens if I change a link on purpose?

The issue shows exactly which fields changed and offers Accept New
Baseline
. The previous baseline is kept.

Does it need PrettyLinks or ThirstyAffiliates?

No. Both are supported when present; plain affiliate links work without
either.

Why does the admin screen say “Revenue Integrity”?

That is the plugin’s original name. The directory listing now uses a
descriptive name; the plugin, its settings and its data are the same.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Affiliate Link Integrity Checker” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.1.4

  • Listing update: the plugin is now listed as “Affiliate Link Integrity Checker”, with a clearer description, tags and screenshot order. No functional change.

1.1.3

  • Removed unused repair-history and baseline-history query code that had no screen in this edition.
  • Quick Fix Undo states its scope in the engine: it undoes the repair most recently made to a path, and refuses an older one with a reason.

1.1.2

  • Fixed: Quick Fix Undo could refuse to restore a repair whose pre-repair value was legitimately empty.

1.1.1

  • README clarity: the Safety section and FAQ describe Quick Fix explicitly. No functional change.

1.1.0

  • Quick Fix for issues the audit can prove it knows how to undo, with a preview, an immediate recheck and Undo.

1.0.0

  • First release: Auto Discovery, eight detectors, Alert Trust classification, versioned baselines, resumable jobs, SSRF protection, PrettyLinks and ThirstyAffiliates adapters, CSV export.