Gutenberg is more than an editor. While the editor is the focus right now, the project will ultimately impact the entire publishing experience including customization (the next focus area).

Discover more about the project.

Editing focus

The editor will create a new page- and post-building experience that makes writing rich posts effortless, and has “blocks” to make it easy what today might take shortcodes, custom HTML, or “mystery meat” embed discovery. — Matt Mullenweg

One thing that sets WordPress apart from other systems is that it allows you to create as rich a post layout as you can imagine — but only if you know HTML and CSS and build your own custom theme. By thinking of the editor as a tool to let you write rich posts and create beautiful layouts, we can transform WordPress into something users love WordPress, as opposed something they pick it because it’s what everyone else uses.

Gutenberg looks at the editor as more than a content field, revisiting a layout that has been largely unchanged for almost a decade.This allows us to holistically design a modern editing experience and build a foundation for things to come.

Here’s why we’re looking at the whole editing screen, as opposed to just the content field:

  1. The block unifies multiple interfaces. If we add that on top of the existing interface, it would add complexity, as opposed to remove it.
  2. By revisiting the interface, we can modernize the writing, editing, and publishing experience, with usability and simplicity in mind, benefitting both new and casual users.
  3. When singular block interface takes center stage, it demonstrates a clear path forward for developers to create premium blocks, superior to both shortcodes and widgets.
  4. Considering the whole interface lays a solid foundation for the next focus, full site customization.
  5. Looking at the full editor screen also gives us the opportunity to drastically modernize the foundation, and take steps towards a more fluid and JavaScript powered future that fully leverages the WordPress REST API.


Blocks are the unifying evolution of what is now covered, in different ways, by shortcodes, embeds, widgets, post formats, custom post types, theme options, meta-boxes, and other formatting elements. They embrace the breadth of functionality WordPress is capable of, with the clarity of a consistent user experience.

Imagine a custom “employee” block that a client can drag to an About page to automatically display a picture, name, and bio. A whole universe of plugins that all extend WordPress in the same way. Simplified menus and widgets. Users who can instantly understand and use WordPress — and 90% of plugins. This will allow you to easily compose beautiful posts like this example.

Check out the FAQ for answers to the most common questions about the project.


Posts are backwards compatible, and shortcodes will still work. We are continuously exploring how highly-tailored metaboxes can be accommodated, and are looking at solutions ranging from a plugin to disable Gutenberg to automatically detecting whether to load Gutenberg or not. While we want to make sure the new editing experience from writing to publishing is user-friendly, we’re committed to finding a good solution for highly-tailored existing sites.

The stages of Gutenberg

Gutenberg has three planned stages. The first, aimed for inclusion in WordPress 5.0, focuses on the post editing experience and the implementation of blocks. This initial phase focuses on a content-first approach. The use of blocks, as detailed above, allows you to focus on how your content will look without the distraction of other configuration options. This ultimately will help all users present their content in a way that is engaging, direct, and visual.

These foundational elements will pave the way for stages two and three, planned for the next year, to go beyond the post into page templates and ultimately, full site customization.

Gutenberg is a big change, and there will be ways to ensure that existing functionality (like shortcodes and meta-boxes) continue to work while allowing developers the time and paths to transition effectively. Ultimately, it will open new opportunities for plugin and theme developers to better serve users through a more engaging and visual experience that takes advantage of a toolset supported by core.


Gutenberg is built by many contributors and volunteers. Please see the full list in


How can I send feedback or get help with a bug?

We’d love to hear your bug reports, feature suggestions and any other feedback! Please head over to the GitHub issues page to search for existing issues or open a new one. While we’ll try to triage issues reported here on the plugin forum, you’ll get a faster response (and reduce duplication of effort) by keeping everything centralized in the GitHub repository.

How can I contribute?

We’re calling this editor project “Gutenberg” because it’s a big undertaking. We are working on it every day in GitHub, and we’d love your help building it.You’re also welcome to give feedback, the easiest is to join us in our Slack channel, #core-editor.

See also

Where can I read more about Gutenberg?

Mācā ulang


TERRIBLE User Experience. If the old editor was working, why break it?
It’s hard to find every single setting and when you go to code version it breaks up the post.

Going back ASAP to the old editor. I can’t believe it was released with this kind of bugs!

WordPress, here’s where you went wrong

I was wondering why Gutenberg was released despite overwhelmingly bad reviews. I think I now found the answer…

@clorith said on

“I will remark that out of tens of millions of sites, only a handful have expressed public dismay (at least here on”

Basically what clorith is saying is that this review page is only used by the people who don’t like Gutenberg. And the ones who like it don’t bother to give good reviews.

Are you aware that every plugin in the plugin directory could claim that? “Yeah, my plugin has bad reviews because the unhappy users use this review page to express their unhappiness, but the ones who like it, they don’t bother to give a review”.

This is a flaw in thinking. You’re not different. You also have to address the bad reviews (and the ratio to good ones) and think about what it means, just like every other plugin out there…

Do a test: Run a survey where you ask random WordPress users about what they think about Gutenberg. I suspect the outcome won’t be much different than the rating you see here.

Another reason why clorith’s statement above is dangerous: it basically gives the permission to ignore future reviews as well. Imagine this plugin didn’t have 1,280 1-star reviews, but 5,000. It still looks tiny compared to the tens of millions of sites out there, doesn’t it? This means: it’s already accepted that there will be many more negative reviews and on some level don’t care about this anymore. This is getting detached from reality and your user base.

I have the feeling that some people at WordPress are not aware of what made WordPress so successful. It seems that the great success story (powering over 30% of the web) got to some people’s minds, thinking that this success means that everything they do is right…

Please start listening to the users again.

I have no idea how it works

The blocks drive me crazy. I just want to write and then insert some images that are justified to the right or the left. I don’t know how to do that with Gutenberg. I create an image block and then move things around with those little arrows (that sometimes appear and sometimes don’t so I’m just flailing around hovering on things) and then mive the arrows up or down til something says “OH ok type here” next to the image. But if I want the text to just naturally flow around the image, can I do that? Beats the hell out of me! Once I tried to use html to resize the image precisely. All I did was change the height and width numbers, and the thing flew up errors with tags I don’t understand a word of. Then the whole thing turned into an HTML block so I couldn’t resize it!

I want to be able to switch to code in order to control how lists are nested. I do a lot of nested lists and the only way for the editor to get it right is to use code. Where the hell is the code section? Everytime I try to find it, something screws up and now I have an html block. Why?

I knew some HTML. I learned more html and css to use WordPress. This was useful. I use the knowledge I learned on other projects. I doubt I will ever need to use “Gutenbergblockese” anywhere else ever. I’ve gone from learning useful stuff to forgetting it so this stupid program that thinks it knows what I want can screw everything up. It’s like Clippy but worse because you don’t know it’s there and you can’t shut it off! I’m so sick of computer developers telling me I, the user, want to think less and give up more control.

Please kill Gutenberg with fire. Make everything simple again so me, a simple English-language teacher, can again understand how to code. I used to design my own WordPress themes back when they were simple. Please stop making everything impossible to grasp! That’s why I loved WordPress. It was easy to use but you had the extra tools when you wanted them. Now the extra tools can’t be controlled by a normal user.

Gutenberg is a real time waster!

I’m trying Gutenberg out as I create a new WordPress site. The new editor is a real time waster. I don’t need a new block to create a Title. Just let me highlight it and change the font size! I don’t need a new block every time I hit a return. Just let me type away! And adding an image? Even that takes more time!

At first I thought, “Well, maybe it just takes some getting used to.” But why should I have to? It doesn’t provide me with anymore flexibility than I had before and frankly, I have a lot more ways to spend my time than to have to learn a new editor.

WordPress should remember that many of us are providing content for a living. I put out 6 articles a week for an audience of 110,000 people a month. That much content is a lot of pressure. I don’t need to spend time learning something that doesn’t make my life easier.

Totally unusable

Its totally unusable, I cannot point to the correct block, all UI elements overlap each other. Its even not possible add color to paragraph or heading. And that is only about few of issues on top. But there a lot of bugs, uneditable blocks after page refresh etc.
Pure wordpress team, what a shame to pass this not ready product to mass. For now you can assign Alpha version for max. And 1+ year for polishing this staff.

Read all 2.000 reviews

Contributors & Developers

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


“Gutenberg” has been translated into 43 locales. Thank you to the translators for their contributions.

Translate “Gutenberg” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Caathetan Owahan


Performance improvements

  • Optimize isViewportMatch
  • Performance: BlockListAppender: 1.7x increase on key press
  • Date: Optimize the usage of moment-timezone to save some kilobytes
  • RichText: selectionChange: bind on focus, unbind on blur
  • RichText: only replace range and nodes if different
  • Cache createBlock call in isUnmodifiedDefaultBlock
  • Edit Post: Select blocks only once multiple verified
  • RichText: Do not run valueToEditableHTML on every render
  • RichText: Reuse DOM document across calls to createEmpty
  • Only initialise TinyMCE once per instance
  • Optimize the insertion point component
  • Avoid rerending the current block if the previous block change
  • Avoid getBlock in block-list/block
  • Pass the registry argument to withDispatch to allow selectors to be used

Bug fixes

  • Annotations: Apply annotation className as string
  • RichText: Ensure instance is selected before setting back selection
  • Meta Boxes: Don’t hide disabled meta boxes by modifying DOM
  • Fix: Problems on Media & Text block resizing; Load wp-block-library styles before wp-edit-blocks
  • When a post is saved, check for tinymce and save any editors.
  • Fix: Undoing Image Selection from Media Library in Image Block breaks it
  • Add an end-to-end test for the HTML block
  • Fix regression when copying or cutting content in the editor
  • Fix issue where default appender has icons overlaying the text
  • Set document title for preview loading interstitial
  • Fix: Upload permissions error on end-to-end inline tokens test
  • Ensure classic block caret is in correct position after blur
  • Fix tab navigation sometimes skipping block UI
  • Improve font size picker accessibility: Use a menuitemradio role and better labels
  • Don’t show trashed reusable blocks in the editor or frontend
  • Rename functions, removing gutenberg_ prefix
  • Add block switcher end-to-end tests
  • Allow links in plugin group in the editor more menu
  • Introduce searching of block categories from slash inserter
  • Convert HTML formatting whitespace to spaces
  • Label link format with selected text, not full text
  • Ensure permalink panel is only displayed when a permalink is allowed
  • Allow the user to convert unembeddable URLs to links and try embedding again
  • Improve the top bar tools interaction and consistency
  • Fix overflowing content in the facebook embed preview screen
  • Add an action to set a category icon and correct block categories documentation
  • Fix: pasting a tag that is part of a transform and not matched ignores the content.
  • Packages: Extract Eslint config package
  • Add end-to-end test to catch revert of title during a preview after saving a draft
  • Avoid react warnings when merging two adjacent paragraphs
  • Avoid PHP notice in the recent comments block