No unsafe-inline
by Giuseppe · Security
Also makes 1 other plugin · 600+ installs across the portfolio →
No unsafe-inline helps you to build a Content Security Policy avoiding to use 'unsafe-inline' and 'unsafe-hashes'.
Try it live opens a temporary test site in your browser, which can take about 20 seconds to load. Plugins that rely on outside services or a full server may not work completely there.
Health
B 73/100
Few reviews
Active installs
200+
≈290 estimated
Momentum
+10%
downloads vs prior 30d
Biggest opportunity: Swap “content security policy” and “multisite” for “hashes” and “clickjacking”. “content security policy” isn't earning its slot: you're not in the first 24 results for its own search. “hashes” sits at #8 untagged, close enough for a declared tag to move it up. “multisite” isn't earning its slot: you're not in the first 24 results for its own search. “clickjacking” sits at #15 untagged, close enough for a declared tag to move it up. All five slots are taken, so one has to go.
73 health vs 66 average across 1,776 Security plugins
Install conversion
How it's measured →1.6%
of downloads still active
At least 200 of 12.5K lifetime downloads are still running, in line with its category: the median Security plugin keeps 1.4%, across 1,061 plugins.
Downloads count every update, not just first installs, so older and more frequently released plugins read lower. Compare against other Security plugins, not across the directory. wp.org reports active installs as the bottom of a band, so the real rate is this or higher.
This plugin shipped 3 releases in the last 12 months, and every existing install that updated counted as another download. wp.org publishes no split between first installs and updates, so we show the raw rate rather than guess at one.
Details
Directory ranking optimization
How it's scored →How well this listing is tuned to rank in WordPress.org search, on the factors an owner controls. Not popularity, optimization.
Well optimized
Most to gain: Support resolution
Updated 332 days ago, past the ~180 days where wp.org starts discounting
Tested up to WordPress 6.9.11, the current branch or newer
5.0★ over 5 reviews, smoothed to 4.18★ and held back under 25 reviews
5 of 5 tags set · short description in place
0 of 1 support threads resolved in the last 2 months
To rank higher: Mark more forum threads resolved — the resolved ratio feeds the ranking.
Get the full rank-higher report →Search visibility
How it's tracked →Directory searches this plugin turns up in, and which way each one is moving. WordPress.org publishes no history of search positions, so this starts the day we first tracked a keyword and never backfills.
32
Momentum
Losing ground
-0.9
Velocity
places per keyword, 26d
8%
Breadth
of keywords climbing, 26d
-0.5
Acceleration
recent half vs earlier
wp.org is where the directory puts the plugin for that search. On merit is where it would sit if results were ranked on rating, support and updates, without the install boost. The last column is how far the wp.org position moved, from our first reading in the last 90 days to the latest.
| Keyword | wp.org | On merit | wp.org move, 90 days |
|---|---|---|---|
| unsafe inline your tag | #1 | #4 | — |
| hashes | #8 | #10 | 0 |
| inline | #11 | #20 | down 1 |
| csp your tag | #13 | #11 | down 4 |
| clickjacking | #15 | #13 | up 1 |
| inline content | #14 | #19 | down 1 |
| content security policy your tag | Not in the top 24 | ||
| multisite your tag | Not in the top 24 | ||
| security your tag | Not in the top 24 | ||
31 searches this plugin appeared in over the last 90 days, 6 listed. 25 left out as unrelated or noise (years, numbers, stray words). 3 of its tags aren't in the top 24 for their own search.
What to do about it
- Swap “content security policy” and “multisite” for “hashes” and “clickjacking”. “content security policy” isn't earning its slot: you're not in the first 24 results for its own search. “hashes” sits at #8 untagged, close enough for a declared tag to move it up. “multisite” isn't earning its slot: you're not in the first 24 results for its own search. “clickjacking” sits at #15 untagged, close enough for a declared tag to move it up. All five slots are taken, so one has to go.
- One page off on “csp”. #13 puts you just past the first ten results, where almost all the clicks stop. The gap to close is small.
Daily downloads
Since 5 Oct 2022 · 1,488 days · wp.org + Plugin Pulse archive
30-day downloads
Rolling 30-day volume · peak 826 · peaks are release surges
Directory rank
Ranked about #11,300 to #12,900, alongside the other plugins at 200+ installs. Plugins with the same install count swap places between wp.org requests, so this is where most of them sit. Checked monthly, last on 1 Nov 2026.
Health trend
Composite health score, snapshotted daily
Update activity
How busy the existing users are, measured as downloads in the last 30 days for every 1,000 active sites. A spike means a new release everyone's pulling; a long, slow decline means an aging user base that updates less.
Release cadence
Occasionally updatedHow often this plugin actually ships. A steady rhythm is the maintenance signal a single "last updated" date can't show.
3
releases in the last 12 months
11mo ago
latest release · v1.3.0 · 4 Dec 2025
16
tagged releases on record
Recent releases
What its installed base runs
via wordpress.orgShare of active installs on each version of this plugin · 76% run the current release. Green is the current release; a big slice on older versions is a user base that has stopped updating.
Estimated active installs
The public count shows “200+”. Our estimate pins where the real number sits.
Crossed into this band 21 months ago; a band this size takes about a year or more to cross, which places it about 90% of the way through.
Install history since 4 Oct 2022
Recent reviews
All reviews on wp.org ↗- ★★★★★ hohumtiddleypom2.0y ago
This plugin has a learning curve. And it demands patience. But the results exceed expectations. I used this plugin on a local server. I aimed to find Gutenberg Inline styles in (rendered) HTML. This plugin found the inline styles and several style attributes.
Read on wp.org ↗ - ★★★★★ mdbraber2.3y ago
Works like it says on the box. Make sure you have the right PHP modules installed. Thanks for building this!
Read on wp.org ↗ - ★★★★★ feofanidze2.7y ago
Not everything went smoothly, I had to abandon the Clearfy plugin and tinker with the settings, but it was worth it. All СSP headers passed the evaluator-test successfully.
Read on wp.org ↗ - ★★★★★ Anonymous User3.8y ago
I’ve tried countless plugins for creating CSP policies, but none of them let you create strong policies that could actually mitigate XSS attacks. This plugin is pretty young and is made by a solo developer, naturally there are some rough edges for such a plugin. But these problems should go away with time.
Read on wp.org ↗ - ★★★★★ gianni654.1y ago
The only possible solution for those who want to adopt a stricted csp. I have installed dozens of plugins for the management of the CSP, but THERE IS NO OTHER FREE PLUGIN that allows to use scripts and CSS online without disabling the protection against XSS vulnerabilities. All others disable the protection by adding the “unsafe-inline” directive. The solution adopted by this plugin is the only intelligent one: it removes styles and scripts in line, putting them in external files (allowed by stricted policy). Furthermore, the creator was very kind, thorough and helpful. Although perhaps a bit immature, I absolutely recommend this plugin, to try! Gianni
Read on wp.org ↗
Languages
via translate.wordpress.orgTranslated into 3 languages, 1 at 90% or more
AI assistants
How it's measured →Whether ChatGPT and Claude name this plugin when asked the category question, and whether the readme gives them something to quote.
Not measured yet for this plugin’s topics. Its tracked searches are not among the measured topics. See the topics measured so far.
Readme readiness
7 of 8 pass · checked 28 Oct 2026Can an assistant quote this readme? Eight deterministic checks over the wp.org listing, no model involved.
- ✓ Says what it does "No unsafe-inline helps you to build a Content Security Policy avoiding to use 'unsafe-inline' and 'unsafe-h..."
- ✓ Has a FAQ 6 questions in the FAQ.
- ✓ FAQ asks real questions 6 of 6 read like questions a user would type.
- ! Names who it is for One audience phrase ("if you want"); say who the plugin is for and what they use it for.
- ✓ Names what it works with Mentions Multisite.
- ✓ Headings and lists 10 headings and 5 lists.
- ✓ Enough to quote 8,310 characters of description.
- ✓ Tags match the text All 5 tags appear in the text.
Growth timeline
Install-tier crossings we have observed, and how long each tier took to outgrow
- 2025-01-30 100+ → 200+ up after 8 days in tier
- 2025-01-22 200+ → 100+ down after 5 days in tier
- 2025-01-17 100+ → 200+ up after 49 days in tier
- 2024-11-29 200+ → 100+ down after 9 days in tier
- 2024-11-20 100+ → 200+ up after 23 days in tier
- 2024-10-28 200+ → 100+ down after 5 days in tier
- 2024-10-23 100+ → 200+ up after 194 days in tier
- 2024-04-12 90+ → 100+ up after 6 days in tier
Competes with
The plugins that solve the same job, ranked by shared tags then reach, closest match first. The letter on the right is each plugin's health grade (A best, F worst).
- C Content Security Policy Manager 2K+ installs · 4.0★ · 3 shared tags D
-
GD Security Headers 1K+ installs · 3.9★ · 3 shared tags B -
Security Header Generator 400+ installs · 4.3★ · 2 shared tags A -
Wordfence Security – Firewall, Malware Scan, and Login Security 5M+ installs · 4.7★ · 1 shared tag A -
Hostinger Tools 3M+ installs · 3.6★ · 1 shared tag B -
Really Simple Security – Simple and Performant Security (formerly Really Simple SSL) 3M+ installs · 4.9★ · 1 shared tag A
Embed this report card
Drop a live Pulse card for No unsafe-inline into a readme, a review or a deck. It updates itself.
<iframe src="https://plugins.wpmayor.com/embed/no-unsafe-inline" width="480" height="300" style="border:0" loading="lazy" title="No unsafe-inline — Plugin Pulse"></iframe> No unsafe-inline: 200+ active installs, 5.0★ (5 reviews). Plugin Pulse (WP Mayor), as of 2026-11-01. https://plugins.wpmayor.com/plugin/no-unsafe-inline
Spotted a number that looks wrong? Report a data issue and we'll check it against the source.