Opened 6 weeks ago
Last modified 6 weeks ago
#8166 new enhancement
Plugin Search Algorithm Creates Barriers for New Plugin Discoverability
| Reported by: |
|
Owned by: | |
|---|---|---|---|
| Milestone: | Improved Search | Priority: | normal |
| Component: | Plugin Directory | Keywords: | |
| Cc: |
Description
As a plugin author, I've been looking into how the plugin search works, and I think there's room for improvement in helping users discover new plugins.
The Problem
The current search algorithm makes it really hard for new plugins to get found unless they copy the naming conventions of already-dominant plugins. This leads to a situation where searching for something like "discount rules" returns dozens of plugins all named variations of "Discount Rules for WooCommerce" - because that's what the algorithm rewards.
I dug into the search code (class-plugin-search.php) and found some things worth discussing.
What I Found
Title matching gets a 5x boost
$should_match[] = [
'multi_match' => [
'query' => $search_phrase,
'fields' => $this->localise_es_fields( 'title', 'slug_text' ),
'type' => 'most_fields',
'boost' => 5,
],
];
This is the biggest boost in the algorithm. It pushes authors to name their plugins exactly what users search for, which usually means copying the top plugin's name.
Active installs penalty is steep
'exp' => [
'active_installs' => [
'origin' => 1000000,
'offset' => 0,
'scale' => 900000,
'decay' => 0.75,
],
],
The algorithm uses 1 million installs as the baseline and penalizes everything below that exponentially. A plugin with 1,000 installs basically scores nothing compared to one with a million. Popular plugins should rank higher, sure, but this seems excessive for new plugins trying to get started.
No support history means penalty
'field_value_factor' => [
'field' => 'support_threads_resolved',
'missing' => 0.5,
],
New plugins don't have support threads yet, so they get penalized by default. The same goes for ratings.
Why This Matters
- Plugin names all look the same - Search for any popular feature, and you'll see dozens of nearly identical names. The authors learned this is the only way to rank.
- Blog recommendations become confusing - "I recommend the Discount Rules plugin" - which one? There are 50 with that name.
- Innovation gets buried - Build something new with a unique name? Nobody finds it. You're forced to copy what's already popular.
- Established plugins keep winning - They rank first, get more installs, and rank even higher. New plugins can't break in.
Suggestions
I don't have all the answers, but here are some ideas:
1. A "Discover" or "New & Notable" section
Modern app stores and social platforms have discovery features to surface new content. A dedicated section for quality new plugins (recently reviewed, good code, responsive authors, growth rate) would help new developers get seen.
2. Search result diversity
Include 1-2 "rising" plugins on each search results page, clearly labeled as new/rising.
3. Reduce penalties for new plugins
- Cap the minimum score for low-install plugins
- Don't penalize plugins under 6 months old for having no support history
- Lower the title boost so unique names have a chance
4. Add sorting options
Let users sort by "Newest" or "Rising" in addition to relevance.
Why This Matters for WordPress
WordPress has always been about democratizing publishing. But the plugin directory is consolidating around whoever got there first with a particular naming pattern.
If new developers see that success means copying what exists, they'll either give up or make clones. WordPress loses the innovation that made it great.
Platforms that don't help new creators get discovered eventually lose them. I'd hate to see that happen here.
Happy to discuss further or provide more data if helpful.
Change History (4)
#1
@
6 weeks ago
- Keywords search discoverability new-plugins removed
- Milestone set to Improved Search
#3
@
6 weeks ago
Search vs Discovery
Thanks for the thoughtful reply. I agree with the core distinction between search and discovery, and I don’t think search results should be used as a marketing channel for untested plugins.
Where we still seem to disagree is not on whether popularity and trust signals should matter — they absolutely should — but on how strongly the current algorithm converts early advantage into long-term dominance, and what that means for users and the wider plugin ecosystem.
Search Can Be Correct in Intent but Still Flawed in Outcome
Search should help users find the most relevant and reliable result for a known need. However, the current scoring model doesn’t just prefer proven plugins — it effectively collapses the result set around incumbents.
Two mechanics contribute most to this behavior.
Exponential Active Install Weighting
Using one million installs as the baseline creates a steep decay curve. A plugin with thousands of installs is not merely ranked lower; it is functionally invisible compared to plugins that crossed the early popularity threshold.
This goes beyond ranking by trust and creates a strong reinforcement loop. Higher-ranked plugins receive more installs, those installs further improve ranking, and over time rank becomes a proxy for “got there first” rather than “best available option.” In this context, time is not just a filter — it is a multiplier.
Penalizing Missing Signals Instead of Negative Signals
New plugins do not yet have support threads, resolutions, or ratings. Treating missing data as a negative value penalizes plugins before users have had any opportunity to evaluate them.
There is an important distinction between a plugin with unresolved support issues and a plugin that is simply new. The current model does not clearly separate the two.
This Is Not About Helping Authors, but About Avoiding Monoculture
One visible outcome of the current incentives is plugin name convergence. Authors quickly learn that unique or branded names are disadvantaged compared to exact-match, keyword-heavy titles.
From a user perspective, this results in search results filled with nearly identical plugin names. This makes alternatives harder to distinguish, recommendations more ambiguous, and experimentation with different approaches less likely. While this behavior is a rational response to incentives, it is not a healthy search outcome.
This Is Not a Call to Weaken Search
To be clear, this is not an argument for randomly promoting untested plugins, replacing relevance with novelty, or ignoring installs, ratings, or support history.
The goal is not to make search less reliable, but to avoid permanent invisibility for new, high-quality plugins that users never get a chance to evaluate.
Containing Search and Supporting Discovery
Search and discovery can coexist without undermining each other. Discovery does not need to be injected directly into core search results to be effective.
Dedicated discovery surfaces such as “New & Notable” or “Rising Plugins,” clearly labeled emerging placements, optional user-controlled sorting like “Newest” or “Trending,” and short grace periods where missing support or rating data is treated neutrally would all help meaningful alternatives surface over time. Reducing title-match dominance would further ensure that relevance is not tied primarily to name cloning.
These approaches preserve user trust while allowing room for innovation.
Why This Matters for WordPress Users
WordPress has historically thrived because new ideas could gain traction without first copying what already existed.
If the only viable path to visibility is cloning names and feature sets, the ecosystem slowly converges. Over time, this leaves users with fewer real choices, less innovation, and older or abandoned plugins continuing to rank highly due to past momentum.
Search can continue to answer “show me the most proven option,” while the platform also answers “what else exists.” Supporting both does not weaken WordPress — it strengthens it.
I’m happy to continue the discussion and explore ways to improve discovery without compromising the reliability users expect from search.
#4
@
6 weeks ago
Plugin Search Filters
The current plugin search filters — Featured, Popular, Recommended, Favorites, For Elementor, WooCommerce, Marketplace — are largely useless and redundant. Notably, the Featured and Recommended filters display the exact same plugins, despite Recommended claiming: "These suggestions are based on the plugins you and other users have installed." In practice, this is a pure duplication with no real benefit for users. Testing this section across multiple websites confirms that the plugins shown never change, making it effectively meaningless.
The Favorites filter is also redundant. Its function is basically a wishlist and could be simplified to a small heart icon, placed conveniently on the side. I understand that main plugins like WooCommerce and Elementor are essential to WordPress’s ecosystem, and I appreciate their role, so I have no critique there.
The Popular filter simply ranks plugins by active installs, and the current search algorithm just applies keyword filtering on top. Overall, this filtering system feels outdated and does not provide meaningful value for either users or authors.
Reflecting on my own experience submitting plugins, my first plugin was approved after 1.5 months, following a few rounds of fixes. During that time, I observed thousands of plugins waiting for review — sometimes increasing by 100 in a single day. This shows that the WordPress plugin review team is working hard, most of them volunteers.
Despite this effort, many accepted plugins quickly become outdated or stop working. For example, browsing the Popular tab around page 150 (approximately the 5,400±36th plugin) reveals plugins with only 1,000+ active installs, and about half of them were last updated more than a year ago. This indicates that roughly only 10–15% of the 60,000+ plugins in the directory are actively maintained. It raises an important question: What is the purpose of manually reviewing 100+ plugins every day if the overall system does not ensure ongoing usefulness?
The root problem appears to be the current state of the plugin search directory. Outdated filters, duplicated sections, and weak discovery mechanisms undermine both user experience and the efforts of plugin authors. This issue deserves careful attention and improvement.
Search and discovery are different functions and both exist to serve users, not authors.
Search answers "I know what I want. Help me find the best match." The user has intent and the algorithm's job is to connect that intent to the most relevant and reliable result. When I search for "discount rules" I want to see the plugins that thousands of other users have already vetted through installs, reviews and support interactions. Popular results ranking higher is search working correctly. This is how search works everywhere, from Google search to app stores.
Discovery answers "I don't know what exists. Show me something interesting." This is where surfacing new, unproven, or niche plugins makes sense. It can be done through curated sections, trending lists, or recommendations. These should not be injected into search results or it will degrade the search experience.
If I search for a specific feature and get a random new plugin nobody has tested then that is not helping me but it is using my search as marketing opportunity.
Quality plugins and themes eventually bubble up to the top because:
This takes time. It is supposed to take time. The time is the filter.