Something Is Wrong With the WordPress.org Popular Themes List: A Two-Year Investigation

Before you read: I build WordPress themes for a living (Inspiro, WPZOOM), so I compete on the list I’m about to criticize; judge my bias accordingly. I can’t see WordPress.org’s servers, and I can’t prove who is doing what. What I can do is show you two years of public, reproducible data and let you decide whether it looks organic. Every number in this post comes from the WordPress.org API, archived daily by WP.MD’s theme tracker, or from public third-party sources that are linked inline. If any of the theme authors mentioned here have an innocent explanation, I will happily publish it, verbatim, at the top of this post.
Table of Contents
- TL;DR
- What normal looks like
- The pattern
- The readme experiment
- The "different authors" share an Analytics ID
- Two years of "the data looks real"
- What I think is happening
- Why this matters (it's not just leaderboard drama)
- What should change
- What changes on WP.MD
As I write this, Envo Royal sits at #22 in the WordPress.org Popular Themes list, showing 30,000+ active installs. It has five ratings, a 3.7-star average, an almost empty support forum, and one “update” in the last year: a two-line readme change.

Meanwhile, themesinfo.com detects Envo Royal on 297 live websites. BuiltWith has found roughly 4,000 sites ever. When I manually reviewed ~50 of the sites Google can find with the theme’s “Created with Envo Royal” footer credit, most were AI-generated placeholder pages for businesses that don’t exist, with near-identical content repeated across domains.

For comparison: my own theme, Inspiro, shows ~60,000 installs on WordPress.org, and BuiltWith detects it on ~62,000 sites. The two independent measurements agree almost exactly, one to one. So when a theme has real users, the crawlers do find them. For Envo Royal, WordPress.org claims 30,000 and the crawlers find a few thousand at best. With themesinfo, the ratio is 81 to 1.

One of these numbers is not describing reality. This post is about which one, and about the two years I’ve spent asking the people who run the directory to look into it.
TL;DR
- A small, recurring group of themes (the same ones since 2024) repeatedly gains 5,000–20,000 “active installs” in days while being downloaded ~20 times per day. That’s not improbable growth; it’s arithmetically impossible growth.
- These themes rise and crash in lockstep: 4–5 themes, published by what appear to be different authors, gaining or losing 15–20 ranking positions on the same day, repeatedly, for two years.
- The “different authors” are less different than they look: several of their websites share the same Google Analytics ID.
- On the day I published my data on X, one of the themes shipped its first “update” in months: a readme version bump. That update accidentally gave us the best estimate yet of its true install base, and it’s ~5% of the claimed number.
- I’ve reported all of this to WordPress.org’s systems administrator, in the public #themes channel on Make WordPress Slack, and to the Themes Team — since September 2024. The consistent answer: “the data looks real.” In May 2026 the numbers were quietly reset: 30,000 installs became 4,000 overnight. Five weeks later, they were climbing again, the same way as before.
What normal looks like
I’ve maintained themes in the directory for over a decade, and since May 2024 I’ve been capturing a daily snapshot of the entire Popular list: position, active installs, and downloads for every theme. I started out of my own curiosity; the data is now published at wp.md/popular-themes.
After ~700 daily snapshots, you develop a strong prior for what organic movement looks like. Real themes are boring:
- Installs move slowly. WordPress.org reports installs in coarse buckets (1,000+, 2,000+, 10,000+…). A theme with real users crosses from one bucket to the next a few times per year, and almost never moves backward.
- Position drifts. A couple of places up or down per week. Even a viral moment (a YouTube feature, a WordCamp mention) shows up first as a downloads spike, then installs follow gradually.
- Everything correlates. Installs, downloads, support topics, reviews, and third-party crawler detections all grow together, at roughly proportional rates.
The group of themes this post is about violates all three, repeatedly, in the same direction, at the same time.
The pattern
The cast has rotated a bit over two years (early members like CentralNews, ListMode and MagSoul have faded), but the core group I’ve tracked since April 2025 is: Envo Royal, Envo One, Futurio, Futurio Storefront, Popularis eCommerce, Spacr, with satellites like Iris WP, Unibiz and NewsBlogger showing the same fingerprints at various times. They share four characteristics:
1. No visible users. Between them: a handful of reviews (several negative), support forums with barely any topics, and, for most of the period in question, no code updates for one to two years. Every neighboring theme in the rankings has dozens or hundreds of reviews and an active forum.
2. Installs that outrun downloads by orders of magnitude. Here is Envo Royal’s actual snapshot history from my tracker, from late June 2026:
| Date | Position | Active installs | Downloads/day |
|---|---|---|---|
| Jun 20 | #104 | 4,000+ | 22 |
| Jun 25 | #107 | 4,000+ | 23 |
| Jun 27 | #106 | 4,000+ | 23 |
| Jun 28 | #57 | 8,000+ | 20 |
| Jul 4 | #29 | 10,000+ | 25 |
| Jul 19 (today) | #22 | 30,000+ | 86 |
Between June 27 and July 4, the theme gained six thousand net new “active sites.” In that same week, WordPress.org’s own stats counted roughly 140 total downloads. Even in the absurd best case (every single download becoming a permanently active site, with zero uninstalls), that accounts for 2% of the growth. There is no organic mechanism by which a theme acquires 6,000 active installations that nobody downloaded.
3. Synchronized moves across “unrelated” authors. On June 28, the same day Envo Royal jumped from #106 to #57, Futurio Storefront (a different theme, from a different WordPress.org account) jumped from #120 to #40, with its installs going from 3,000+ to 10,000+ on ~16 downloads/day. This is not a one-off:
- April 15, 2025: the whole group drops ~20 positions, from different authors, on the same day. Days later, they all come back.
- June 18, 2025: Envo Royal ↓6, Envo One ↓16, Futurio Storefront ↓17, all on the same day.
- January 28, 2026: Envo Royal falls #23 → #40 overnight; the group moves ~15–16 positions together again.
- May 27, 2026: the big one: Envo Royal 30,000 → 4,000 installs overnight. Envo One 20,000 → 2,000. Unibiz 20,000 → 3,000. Themes from four different author accounts, reset by 80–90% on the same day.
- June 28, 2026: the recovery begins for the group, in lockstep, as documented above.
Independent products with independent user bases do not move like this. Coupled systems do.

4. A real-world footprint that rounds to zero. Claimed installs vs. what independent crawlers can actually find:
| Theme | WP.org claims | BuiltWith detects | themesinfo detects |
|---|---|---|---|
| Inspiro (control) | 60,000+ | ~62,000 (≈1:1) | ~10,000 |
| Envo Royal | 30,000+ | ~4,000 (≈8:1) | 371 (81:1) |
The control row is the point: for a theme with real users, BuiltWith’s whole-web crawl finds essentially every claimed install. Crawler undercounting cannot explain Envo Royal’s gap, and the BuiltWith figure is the generous one, since it counts every site ever detected, including the AI-generated ghosts. And the sites that do exist are strange. Search Google for “Created with Envo Royal WordPress theme” and you’ll find page after page of AI-generated brochure sites for fake businesses: same layouts, near-identical filler copy, different domains. Sites that exist to be counted, not visited.
The readme experiment
On January 23, 2026, I published this data in a thread on X. I wrote that the movements were “statistically hard to justify” and listed the themes.
That afternoon, Envo Royal received its first update in months: version 1.0.13 → 1.0.14. The changelog, per WordPress.org’s own Trac: two files changed — readme.txt and style.css. “Tested up to” bumped from 6.8 to 6.9. No code.
That cosmetic update had a useful side effect. When a theme ships an update, every live WordPress site running it checks in and downloads the new version over the following days. It’s the closest thing we have to a public census of a theme’s true active base. Envo Royal claimed ~30,000 active installs that week. The update produced a one-day download spike of roughly 1,400 before falling straight back to the ~130/day baseline. You can see the spike, the only one in twelve months, on the theme’s downloads chart.
Thirty thousand active sites don’t produce 1,400 update downloads. Somewhere between one and two thousand active sites do, which is right where BuiltWith and themesinfo put this theme all along.
The “different authors” share an Analytics ID
The group is published under several WordPress.org accounts — EnvoThemes, FuturioWP, and others — which is what makes the synchronized movement so improbable if they’re independent.
They’re not independent. A reverse Google Analytics lookup on the tracking ID UA-42300758 returns, among others, envothemes.com, futuriowp.com, themes4wp.com, and ecommerce4wp.com: the official homepages of these “separate” vendors, all reporting into one analytics property.
To be clear: WordPress.org allows one company to operate multiple theme author accounts if it’s disclosed to the Themes Team (a rule at least one directory administrator has said publicly he disagrees with and wants changed). I have no way to know whether these accounts were disclosed. But the multiple-accounts question is secondary. The primary question is why every one of this owner’s themes gains thousands of phantom installs at a time, and why they all reset on the same day.
Two years of “the data looks real”
I didn’t go straight to a blog post. Here is the reporting timeline, all of it in public or semi-public WordPress community channels:
- August–September 2024 — I report in #themes on Make WordPress Slack that brand-new themes (CentralNews, ListMode, MagSoul) with 5–10 downloads/day are appearing in the top 20 with 10,000+ installs. MagSoul drops from 10,000+ to 1,000 in two days. Otto (Samuel Wood, WordPress.org systems) replies: “Sometimes it can take a day or two before our DNS systems figure out that it’s fake data. This is mostly handled automatically” and, on the themes that stayed up for weeks, adds: “Sometimes it requires a little manual intervention from us.” So the existence of fake install data, and of automated + manual cleanup, is confirmed. The question was never whether this happens, only whether it was being caught.
- April 15–17, 2025 — Otto asks me for examples; I send the list (Envo One, Futurio Storefront, Envo Royal, Popularis eCommerce, Spacr). His conclusion after looking at the raw data: “I don’t really see any indications of fraud here… The data looks real.” Meanwhile the group had just dropped ~20 positions in unison and bounced back within days, on ~50 downloads/day each.
- June 2025, January 2026, February 2026 — I keep sending updated data as the cycle repeats, including the BuiltWith/themesinfo gap and the question of whether an install-inflation service (there are commercial ones openly advertising this) was being used.
- January 23, 2026 — At the suggestion of community members (including, notably, a WordPress.org directory admin telling the thread that install counts have “always been guesstimates”), I take it public on X. Brad Williams (WebDevStudios): “This feels like they are breaking guidelines… Seems shady as hell.” Courtney Robertson (GoDaddy, WP training team) tags the Themes Team rep. The team rep responds: “Thank you for tagging me. I will discuss this with the team.”
- January 27, 2026 — In the resulting Slack discussion, a WordPress lead developer shares the popularity formula (it’s simply
active_installs / days_old) and confirms the install-counting rules are deliberately private “as you know plugin authors like to game that data heavily.” Another long-time contributor sums it up: “I think upstream just has less awareness and control over the ranking algo than many of us might imagine.” - March 18, 2026 — I follow up publicly with the Themes Team rep asking whether the team found anything. No substantive answer.
- May 27, 2026 — Every theme in the group is reset: 30,000 → 4,000, 20,000 → 2,000, across four author accounts, overnight. Nobody announces anything. (Justin Ferriman’s take that day: “The system is crazy easy to game.”)
- June 28, 2026 — The climb begins again. Twelve days later, Envo Royal is back at #20 with 30,000+ installs, on 86 downloads a day.
I want to be fair to the people in that timeline: the WordPress.org meta team is tiny, the stats pipeline is old, and Otto did look at the data when asked. The May 27 reset suggests someone eventually acted. But a system where inflated numbers survive for two years, get wiped without explanation, and then re-inflate within five weeks is not a working system. It’s a leaderboard on the honor system.
What I think is happening
Active install counts come from sites “phoning home” to WordPress.org’s update API. Anything that can make HTTP requests can pretend to be a WordPress site, and unlike a download, a phantom “active site” keeps counting every day. My best guess, consistent with all the data:
- A fleet of throwaway sites or spoofed update-check requests inflates the active-install signal for a portfolio of themes. This explains installs growing 10,000 at a time with no downloads: the “sites” never downloaded anything; they just report using the theme. The AI-generated footer-credit sites likely exist to give the numbers a veneer of crawlable legitimacy.
- Popularity = installs ÷ age does the rest. Buy installs, and rank follows mechanically. Rank on the Popular list drives real installs and real ad revenue on the authors’ upsell sites.
- Periodically, WordPress.org’s cleanup catches the fake cohort (Otto’s “DNS systems” plus occasional manual intervention) and the themes crater in installs and rank simultaneously. That’s the synchronized crash. Then the operation spins up new sources and the climb resumes, which is the synchronized recovery. Repeat that cycle for two years and you get the sawtooth in my charts.
Could there be an innocent explanation? For any single event, maybe; Otto correctly notes that weekend dips and measurement artifacts are real. But an innocent explanation has to cover all of it at once: installs without downloads, five themes moving as one, a shared analytics ID, a 1,400-download census against a 30,000 claim, ghost sites with AI filler content, and an 81:1 gap against every independent measurement. I’ve been unable to construct one. I’m genuinely open to hearing it.
Why this matters (it’s not just leaderboard drama)
The Popular list is zero-sum: every phantom theme in the top 20 pushes an honest theme down. Small independent authors, the people this directory supposedly exists to showcase, lose the visibility their years of work actually earned. I’ve watched themes with real users and active maintenance sit behind a theme whose support forum has been silent for a year.
Users get hurt too, because “popular” is a trust signal. Someone choosing Envo Royal because 30,000 sites appear to use it is making a decision based on a fabricated number, for a theme that went two years between meaningful updates.
And WordPress.org’s own credibility erodes. The install-counting logic is kept secret specifically to prevent gaming; the result is the worst of both worlds, where the numbers get gamed anyway and nobody outside can audit them. As one directory admin put it in January, usage numbers on .org “have always been guesstimates… not really reliable.” Then they shouldn’t be the primary ranking signal for a directory serving 40% of the web.
What should change
- Sanity-check installs against downloads. A theme cannot gain more active sites in a week than it had downloads. This is a one-line invariant. Flag violations for human review instead of letting them ride for two years.
- Explain resets. When thousands of installs are wiped as fraudulent, say so, on the theme page. Silent resets protect the operator, not the users.
- Enforce (and disclose) connected-account rules. If one company operates five author accounts whose themes all move together, reviewers and users deserve to see that relationship.
What changes on WP.MD
From today, the affected themes’ pages on wp.md/popular-themes carry a data-integrity note, a neutral flag that reads: “This theme’s install history contains movements inconsistent with its download volume. View the chart and judge for yourself.” The full daily history is public on each theme’s page, going back to May 2024. I’d rather show you the sawtooth than pretend the list is clean.

If WordPress.org ever explains these patterns, or the authors respond, I’ll update this post and the flags.
Methodology: WP.MD has captured daily snapshots of the WordPress.org Popular Themes list (position, active installs bucket, per-day downloads for the top 250 themes) since May 2024, via the public wordpress.org themes API and downloads stats endpoint. Real-world usage figures are from BuiltWith Trends and themesinfo.com, both retrieved January–July 2026. Slack quotes are from the public #themes channel on Make WordPress Slack and are quoted with attribution to their public speakers. Install counts on WordPress.org are reported in coarse buckets (e.g., “10,000+”), so all install figures here are lower bounds as displayed by WordPress.org itself. I am the author of the Inspiro theme and founder of WPZOOM, which competes in this directory.
Discover more from WP.MD
Subscribe to get the latest posts sent to your email.
Thank you, Pavel, you are doing a real service here. I have one guess for how Envo Royal is getting a lot of hits. There is this really spam-my game called Royal Match that annoyingly always tries to get you to download it. Maybe it makes hits to WordPress.org?
https://apps.apple.com/us/app/royal-match/id1482155847
Great Forensics work. Based on just the number of downloads vs active installs one can say they are definitely doing something “Blackhat” sort of thing.
Good investigation and thanks for sharing the detailed approach.
One small remark to “1. Sanity-check installs against downloads. A theme cannot gain more active sites in a week than it had downloads.”. In reality this can happen of course. If I were to download a new theme and install it onto several of my websites then I would only downloadeit once and FTP it onto my server(s) several times (or once in case of a Multisite setup).
But – I fully agree this is not the default correlation between the downloads vs installed numbers. Especially with free themes as they might be installed and soon be uninstalled again after an initial look at it.