Title: Traffalyzer
Author: kommune3
Published: <strong>September 23, 2026</strong>
Last modified: September 23, 2026

---

Search plugins

![](https://ps.w.org/traffalyzer/assets/banner-772x250.png?rev=3708486)

![](https://ps.w.org/traffalyzer/assets/icon-256x256.png?rev=3708486)

# Traffalyzer

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

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

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

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

## Description

Traffalyzer connects this website with its account on [traffalyzer.com](https://traffalyzer.com)
and brings the outside view into WordPress. Other SEO plugins check what is in the
form. This plugin shows what actually happens out there.

**Reports in the admin area** (menu _Traffalyzer_):

 * **Overview:** site score, last scan, what comes next and a technical quick check
   of robots.txt, the sitemap and llms.txt.
 * **Findings:** everything the crawler found, with an edit link for every affected
   page.
 * **Growth plan:** the steps Traffalyzer suggests; tick them off on paid plans.
 * **Search queries:** strongest queries, opportunities (position 5–20), winners
   and losers.
 * **Pages:** clicks, impressions, position and open findings for every page, plus
   the view _Needs a refresh_: pages that lost at least 20 % of their clicks and
   have not been changed for twelve months.
 * **Broken addresses:** addresses that returned an error in the last scan, with
   the pages that link to them and a suggested redirect. With the _Redirection_ 
   plugin or the Rank Math redirections module the redirect is created right there.

**In the editor** (block editor sidebar, or a meta box in the classic editor): findings
for this page, clicks and position, the real search queries, live-checked against
your text as you type, pages worth linking to, pages that compete for the same query,
the search performance chart with your revisions as markers, and a verdict whether
your last change made a difference. The sidebar loads in the background; nobody 
waits for Traffalyzer when opening the editor.

**Also:** Traffalyzer columns in the post lists (sortable), a dashboard widget, 
an admin bar item with the number of important findings, checks in _Tools  Site 
Health_, WP-CLI commands and an optional `/llms.txt` generated from your published
content.

**The inventory.** WordPress tells Traffalyzer which addresses exist, whether they
are published and indexable (including _noindex_ from Yoast SEO, Rank Math, SEOPress
and All in One SEO), which canonical you set deliberately, the content type and 
when a page was changed. Traffalyzer uses this for findings no crawler can make 
on its own: unpublished content that is still reachable or still in Google, published
pages nothing links to, and canonicals that differ from what WordPress intends. 
Changes are collected when you save and sent in the background; a complete sync 
runs once a week.

What the plugin deliberately does **not** do: start a scan when you save. A crawl
takes minutes and uses quota. There is a button for that.

#### Staging and local copies

Reports and the editor sidebar work on staging and local copies too: addresses are
rewritten to the domain Traffalyzer knows. The inventory, however, is only sent 
from the live site, because a copy would report content the live site does not have.

#### Free and paid

The Traffalyzer service can be used for free. Some functions depend on the paid 
Traffalyzer plan (the details of the growth plan steps and ticking them off); the
plugin itself locks nothing.

### External services

This plugin connects to **Traffalyzer** (traffalyzer.com), a service run by kommune3(
Germany) that analyses the search performance of websites. It is used to show the
reports, the editor sidebar and the metrics of this website in WordPress. **Nothing
is sent before you connect the website.**

What is sent, and when:

 * **When connecting** (your browser, on traffalyzer.com): the address of the homepage,
   the return address in the admin area and one-time values of the connection. You
   sign in on traffalyzer.com yourself.
 * **When connecting** (this server, to traffalyzer.com/api/v1): a one-time code
   and its verifier, in exchange for the key.
 * **Every request to traffalyzer.com/api/v1** carries the key of this website, 
   the language of the current user (`lang=de` or `en`, so texts come back in that
   language) and a User-Agent with the plugin version and the address of the homepage.
 * **Reports, editor sidebar, dashboard widget** (when someone opens them): the 
   address or path of the requested page and the time window.
 * **Daily background task:** the domain profile and the metrics of all pages are
   fetched (no data is sent apart from the key).
 * **Site Health** (Tools  Site Health, and WordPress’ own weekly background check):
   the key is checked with one request for the domain profile.
 * **Inventory** (background task, button or WP-CLI, only from the live site): per
   post the address, a deliberately set canonical, published/indexable, the content
   type, the internal ID (e.g. `post/12`) and the date of the last change.
 * **Edit dates** (background task, can be switched off): the page address, the 
   time of the edit and the revision ID.
 * **Scan button:** only the request to start a scan.
 * **Growth plan, ticking off a step** (paid plan): the key of the step and whether
   it is done or open again.
 * **Disconnecting, reconnecting and uninstalling:** the stored key (on reconnecting:
   the previous key) is sent to Traffalyzer to revoke it.

Not sent: content, titles, names, e-mail addresses or IDs of editors, anything about
visitors. The plugin sets no cookies and adds no scripts to the public website.

 * Privacy policy: [https://traffalyzer.com/en/privacy](https://traffalyzer.com/en/privacy)
 * Terms of use: [https://traffalyzer.com/en/terms](https://traffalyzer.com/en/terms)
 * Legal notice: [https://traffalyzer.com/en/imprint](https://traffalyzer.com/en/imprint)

### Source code and build

The admin and editor scripts in `build/` are compiled from the readable sources 
in `src/`, which ship with the plugin together with `package.json`, `package-lock.
json` and `webpack.config.js`. To build them yourself you need Node.js 20.19 or 
newer (22 recommended):

    ```
    npm ci && npm run build
    ```

PHP needs no build step. Translations: `npm run i18n:pot` creates `languages/traffalyzer.
pot`.

## Screenshots

[⌊Block editor sidebar: clicks and position, the real search queries checked live
against your text, and the search performance chart with a verdict on your last 
change.⌉⌊Block editor sidebar: clicks and position, the real search queries checked
live against your text, and the search performance chart with a verdict on your 
last change.⌉[

Block editor sidebar: clicks and position, the real search queries checked live 
against your text, and the search performance chart with a verdict on your last 
change.

[⌊Overview in the WordPress admin: site score, what comes next and a technical quick
check of robots.txt, sitemap and llms.txt.⌉⌊Overview in the WordPress admin: site
score, what comes next and a technical quick check of robots.txt, sitemap and llms.
txt.⌉[

Overview in the WordPress admin: site score, what comes next and a technical quick
check of robots.txt, sitemap and llms.txt.

[⌊Findings: every affected page with its clicks and a direct edit link.⌉⌊Findings:
every affected page with its clicks and a direct edit link.⌉[

Findings: every affected page with its clicks and a direct edit link.

[⌊Growth plan in phases, ticked off as you go (paid plan).⌉⌊Growth plan in phases,
ticked off as you go (paid plan).⌉[

Growth plan in phases, ticked off as you go (paid plan).

[⌊Search queries: the strongest queries, opportunities on positions 5 to 20, and
winners and losers, each linked to its page.⌉⌊Search queries: the strongest queries,
opportunities on positions 5 to 20, and winners and losers, each linked to its page
.⌉[

Search queries: the strongest queries, opportunities on positions 5 to 20, and winners
and losers, each linked to its page.

## Installation

 1. Install and activate the plugin.
 2. Go to _Traffalyzer  Settings_ and click **Connect with Traffalyzer**. Sign in (
    or create a free account), choose the domain of this website and confirm. You are
    sent back and the key is stored automatically; you never have to copy it.
 3. Send the inventory once when asked (or later under _Settings  Content_).
 4. Optional: under _Settings  Access_, choose which roles see the reports (default:
    editors) and who may start a scan.

Connecting needs HTTPS in the admin area (local hosts such as `*.test` or `localhost`
excepted). Without it, create a key in Traffalyzer under _Domain  Integrations  
Plugins & API access_ and enter it under _Enter the key manually_.

**Key in wp-config.php.** Instead of the database you can set the key as a constant:`
define( 'TRAFFALYZER_API_KEY', 'tfz_…' );` or as the environment variable `TRAFFALYZER_API_KEY`.
Both take precedence over the stored key. In a multisite network the constant applies
to the main site; further sites can use `define( 'TRAFFALYZER_API_KEYS', array( '
blog.example.com' => 'tfz_…' ) );`.

## FAQ

### Does the plugin slow down my website?

No. Nothing runs on the public website except the optional `/llms.txt`. In the admin
area, reports load in the background, responses are cached for ten minutes and metrics
are fetched once a day.

### How much of the API quota does it use?

Traffalyzer allows 200 API calls a day on free domains and 2,000 on paid ones. Thanks
to the cache, an editorial team working all day stays far below that. Pages, columns
and the dashboard widget read local data and cost no quota at all.

### How do I revoke the key?

_Disconnect_ in the settings revokes the key of this website in Traffalyzer. Uninstalling
the plugin does the same. You can also revoke keys any time on traffalyzer.com under
_Domain  Integrations_.

### Why is the inventory not sent from my staging site?

Because a copy of the website has its own database: drafts, test content, deleted
pages. Traffalyzer would compare the live site with a database that is not its own.
If the site under another host name really is the live site, confirm it under _Settings
Content  Live site_.

### Is llms.txt switched on automatically?

No. It is off by default. If a file `llms.txt` already exists in the web root or
another plugin serves one, the settings say so.

### Can I adjust what is reported?

Yes, with the filter `traffalyzer_inventory_entry` ( `$entry`, `$post` ), which 
runs last for every entry. `traffalyzer_post_types` limits the content types.

### Which WP-CLI commands are there?

wp traffalyzer status, `wp traffalyzer inventory [--dry-run] [--allow-foreign-host]`,`
wp traffalyzer scan [--wait]`, `wp traffalyzer metrics`, `wp traffalyzer queue`,`
wp traffalyzer cache clear`, `wp traffalyzer llms-txt` and `wp traffalyzer key set--
stdin` / `key delete`.

### Multilingual sites (Polylang, WPML)?

Every translation is a post of its own with its own address, and the inventory, 
the columns and the editor sidebar use exactly that address, including the language
directory (e.g. `/en/contact/`). The homepage is reported once as `/`; with a static
front page per language, the translated front pages are reported under their own
addresses. Traffalyzer scans the domain across all languages.

### Multisite?

Every site is its own connection with its own key and settings. In subdirectory 
networks all sites share one domain, so the inventory of a site never removes entries
of the others, llms.txt is only served by the main site, and at most five sites 
can be connected (Traffalyzer allows five keys per domain).

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

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

Contributors

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

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

### Interested in development?

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

## Changelog

#### 1.0.0

 * First release.

## Meta

 *  Version **1.0.0**
 *  Last updated **18 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.6 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [content refresh](https://wordpress.org/plugins/tags/content-refresh/)[llms.txt](https://wordpress.org/plugins/tags/llms-txt/)
   [Search Console](https://wordpress.org/plugins/tags/search-console/)[seo](https://wordpress.org/plugins/tags/seo/)
   [site audit](https://wordpress.org/plugins/tags/site-audit/)
 *  [Advanced View](https://wordpress.org/plugins/traffalyzer/advanced/)

## Ratings

No reviews have been submitted yet.

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

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

## Contributors

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

## Support

Got something to say? Need help?

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