Blocks CSS: CSS Editor for Gutenberg Blocks
by Hardeep Asrani · Blocks
Also makes 4 other plugins · 99.1K+ installs across the portfolio →
Blocks CSS allows you add custom CSS to your Blocks straight from the Block Editor (Gutenberg).
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
A 89/100
no flags
Active installs
4K+
≈5K estimated
Momentum
-29%
downloads vs prior 30d
Biggest opportunity: Swap “block editor” and “design” for “blocks editor” and “gutenberg block”. “block editor” isn't earning its slot: you're not in the first 24 results for its own search. “blocks editor” sits at #18 untagged, close enough for a declared tag to move it up. “design” isn't earning its slot: you're not in the first 24 results for its own search. “gutenberg block” sits at #23 untagged, close enough for a declared tag to move it up. All five slots are taken, so one has to go.
89 health vs 71 average across 2,522 Blocks plugins
Install conversion
How it's measured →1.7%
of downloads still active
At least 4K of 233.4K lifetime downloads are still running, in line with its category: the median Blocks plugin keeps 2.1%, across 1,578 plugins.
Downloads count every update, not just first installs, so older and more frequently released plugins read lower. Compare against other Blocks 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 17 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.
Excellent listing optimization
Well tuned across the board
Updated 12 days ago
Tested up to WordPress 7.0.8, the current branch or newer
4.9★ over 25 reviews, smoothed to 4.37★
5 of 5 tags set · short description in place
1 of 1 support threads resolved in the last 2 months
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.
38
Momentum
Losing ground
-0.4
Velocity
places per keyword, 28d
21%
Breadth
of keywords climbing, 28d
-0.9
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 |
|---|---|---|---|
| css editor your tag | #2 | #3 | 0 |
| css | #4 | #7 | up 1 |
| custom css your tag | #8 | #12 | down 1 |
| gutenberg blocks | #13 | #17 | up 1 |
| blocks | #20 | #17 | down 1 |
| blocks editor | #18 | #18 | down 4 |
| syntax | #18 | #18 | down 7 |
| editor blocks | #19 | #17 | down 1 |
| gutenberg block | #23 | #22 | up 1 |
| code blocks | #24 | #21 | 0 |
| blocks for gutenberg | #14 | #16 | 0 |
| gutenberg blocks editor | #17 | #20 | 0 |
| design editor | #20 | #19 | 0 |
| block editor your tag | Not in the top 24 | ||
| design your tag | Not in the top 24 | ||
| gutenberg your tag | Not in the top 24 | ||
14 searches this plugin appeared in over the last 90 days, 13 listed. 1 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 “block editor” and “design” for “blocks editor” and “gutenberg block”. “block editor” isn't earning its slot: you're not in the first 24 results for its own search. “blocks editor” sits at #18 untagged, close enough for a declared tag to move it up. “design” isn't earning its slot: you're not in the first 24 results for its own search. “gutenberg block” sits at #23 untagged, close enough for a declared tag to move it up. All five slots are taken, so one has to go.
Daily downloads
Since 5 Oct 2022 · 1,488 days · wp.org + Plugin Pulse archive
30-day downloads
Rolling 30-day volume · peak 10.6K · peaks are release surges
Directory rank vs rivals
wp.org popularity rank over time · higher is better · when a rival's line climbs above yours, they've overtaken you
Rating trend
Star average over time · dips mark rough releases
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
Actively maintainedHow often this plugin actually ships. A steady rhythm is the maintenance signal a single "last updated" date can't show.
17
releases in the last 12 months
12d ago
latest release · v3.2.8 · 19 Oct 2026
102
tagged releases on record
Recent releases
What its installed base runs
via wordpress.orgShare of active installs on each version of this plugin · 34% 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 “4K+”. Our estimate pins where the real number sits.
Crossed into this band 3 days ago and the previous band took 19 months to cross, so the real count is still just under 5K.
Install history since 22 Aug 2019
Recent reviews
All reviews on wp.org ↗- ★★★★★ maltmann11mo ago
Works like a charm on any of my recent WP projects. [EDIT]I need to change my review.On some setups, I get two CSS editors shown in the “Custom CSS” attribute panel, and only contents of the second instance are getting saved.Problem:Two CodeMirror editors are displayed in the Custom CSS panel of the Blocks CSS plugin instead of one. Both editors are located in the same container. Assumed Root Cause:WordPress enables React StrictMode by default in the Block Editor. React StrictMode runs useEffect hooks twice to detect potential side effects. Analysis:The Blocks CSS plugin initializes CodeMirror in a useEffect hook.Since this useEffect doesn’t have a cleanup function that checks whether CodeMirror is already initialized, wp.CodeMirror() is called again on every mount cycle. With StrictMode enabled, this means: twice on the same DOM element. Probable Solution:The useEffect hook should implement a cleanup function that prevents CodeMirror from being initialized multiple times on the same element.Side Notes:This only happens in some of my setups. I couldn’t figure out any possibly conflicting theme, plugin or code snippet. So I assume it might be something like a timing issue. Conclusion:I won’t change the 5-star rating, because despite of this problem the plugin does its job. And I know how to handle this issue by a simple CSS rule to hide all Block CSS CodeMirrors except the last one:#o-css-editor .CodeMirror:not(:last-child) { display: none;} This topic was modified 5 months, 1 week ago by maltmann. Reason: Revision after issues in some setups
Read on wp.org ↗ - ★★★★★ Сергей12mo ago
Отличный плагин
Read on wp.org ↗ - ★★★★★ shooter60412mo ago
Очень классные возможности! Пользуюсь постоянно!
Read on wp.org ↗ - ★★★★★ someguy422.3y ago
“Essential, Useful Tool, Completes the Block Editor, Should be part of the core,” The one thing they don’t mention is how quick and genuinely concerned the support is.
Read on wp.org ↗ - ★★★★★ Andreslav3.1y ago
Does exactly what I need it to do.
Read on wp.org ↗ - ★★★★★ Masud Rana3.1y ago
Can’t think of Block Editor without this. Tiny powerful thing. Only thing I hate in this plugin is the following line: $render_css = empty( $file_name ) || strpos( $file_name, 'post-v2' ) === false; This means if you deactivate Otter, your content might just break 🙁
Read on wp.org ↗ - ★★★★★ Ronald Huereca3.1y ago
This is a great tool for what it does. The only confusing thing for me is that it says on .org that you have 11 blocks. I couldn’t spot any new ones after installing this plugin, nor found any settings.
Read on wp.org ↗ - ★★★★★ Sunny3.4y ago
Essential for one off css. Simple and works.
Read on wp.org ↗
Behavioral tests
via WP HiveAutomated install-time checks, tested on PHP 8.1.12 · WP 7.0
Languages
via translate.wordpress.orgTranslated into 14 languages, 8 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
3 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 "Blocks CSS allows you add custom CSS to your Blocks straight from the Block Editor (Gutenberg)."
- ! Has a FAQ No FAQ section.
- ! FAQ asks real questions No FAQ to judge.
- ! Names who it is for Never says who the plugin is for or what they use it for.
- ✓ Names what it works with Mentions Gutenberg, Block editor.
- ! Headings and lists 0 headings and 0 lists; assistants quote headed sections and bullet lists, not paragraphs.
- ! Enough to quote 342 characters of description; under 1,000 there is little to quote.
- ✓ Tags match the text 4 of 5 tags appear in the text; "design" does not.
Growth timeline
Install-tier crossings we have observed, and how long each tier took to outgrow
- 2026-10-28 5K+ → 4K+ down after 575 days in tier
- 2025-04-01 4K+ → 5K+ up after 1 days in tier
- 2025-03-31 5K+ → 4K+ down after 5 days in tier
- 2025-03-26 4K+ → 5K+ up after 1 days in tier
- 2025-03-25 5K+ → 4K+ down after 3 days in tier
- 2025-03-22 4K+ → 5K+ up after 1 days in tier
- 2025-03-21 5K+ → 4K+ down after 1 days in tier
- 2025-03-20 4K+ → 5K+ up after 2 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).
-
Classic Editor 8M+ installs · 4.9★ · 2 shared tags A -
Advanced Editor Tools 1M+ installs · 4.5★ · 2 shared tags A -
Disable Gutenberg 500K+ installs · 4.9★ · 2 shared tags A -
Gutenberg Essential Blocks – Page Builder for Gutenberg Blocks & Patterns 100K+ installs · 4.8★ · 2 shared tags A -
Ultimate Blocks – 25+ Gutenberg Blocks for Block Editor 50K+ installs · 4.9★ · 2 shared tags A -
Visual CSS Style Editor 30K+ installs · 4.1★ · 2 shared tags A
Embed this report card
Drop a live Pulse card for Blocks CSS: CSS Editor for Gutenberg Blocks into a readme, a review or a deck. It updates itself.
<iframe src="https://plugins.wpmayor.com/embed/blocks-css" width="480" height="300" style="border:0" loading="lazy" title="Blocks CSS: CSS Editor for Gutenberg Blocks — Plugin Pulse"></iframe> Blocks CSS: CSS Editor for Gutenberg Blocks: 4K+ active installs, 4.9★ (25 reviews). Plugin Pulse (WP Mayor), as of 2026-10-31. https://plugins.wpmayor.com/plugin/blocks-css
Spotted a number that looks wrong? Report a data issue and we'll check it against the source.