I’ve been using GeneratePress to build websites for nearly a decade watched its evolution from a simple, flexible theme into a full-fledged site builder.
In this GeneratePress review, I’ll cover the advantages (and disadvantages) of GeneratePress compared to competing themes. Because, while it is excellent it certainly isn’t perfect. No, GeneratePress isn’t the right theme for everyone, and certain people should avoid it altogether.
Interested? Read on.
- What is GeneratePress
- Popular Competitors
- Free vs. Premium
- Premium Modules
- GeneratePress Elements
- Pricing & Support
- GeneratePress vs. Competition
What is GeneratePress?
GeneratePress is a free theme available in the WordPress repository. As of publication, it has more than 400,000 active installations on live websites. In fact, GeneratePress is one of the 20 most popular WordPress themes in the world.
In addition to the base theme (which is free) GeneratePress offers a paid extension called GeneratePress Premium.
This paid upgrade adds tons of extra features that massively expand the flexibility (and usability) of GeneratePress. GeneratePress Premium is so powerful, it’s honestly hard to recommend using GeneratePress without it.
More on that in a bit.
- Base theme: Free
- Premium add-on: $59/year, $249 lifetime.
Competitors & Alternatives
There are several GeneratePress alternatives that offer similar functionality. Themes like Astra and Blocksy offer extensive design customization, layout control, and hook-based content just like GeneratePress.
Each has its own advantages as I explored in our Astra, Blocksy & GeneratePress comparison.
GeneratePress should also be compared to Genesis Framework, which undoubtedly served as the initial inspiration for GeneratePress’s design and hook-based layout system.
GeneratePress Free vs. Premium
The core GeneratePress theme is rather limited. It contains the basic php templates, the hook & filter system, and limited design controls via the WordPress customizer. And that’s it.
Don’t get me wrong, there is tons of power in the base theme, what’s missing is a user interface that makes it accessible to non-developers.
That’s where GeneratePress Premium comes it. It includes nearly a dozen modules that add visual design and layout controls. It allows you to build completely custom sites without touching PHP or CSS. It also gives you access to the GeneratePress site library
Premium lets you control:
- Typography & color
- Layout and spacing
- Remove elements (e.g. the header or sidebar) on specific pages
But it also adds full site builder functionality.
Premium lets build:
- Sticky headers & navigation
- Custom hero sections for pages and posts
- Complete templates, built with Gutenberg blocks
- Custom loops and loop templates
- Hook custom content anywhere on your site (built with blocks, page builders, or HTML)
Layout & Structure
The core GeneratePress theme embodies a core philosophy that prioritizes function and flexibility above design, and sometimes above ease-of-use.
It lets you choose that most common layouts including full-width, sidebar-left and sidebar-right templates.
There’s a built-in hook system, which is integral part of how GeneratePress functions.
Instead of hard-coding all the various templates like single posts, single pages, archives, etc. GeneratePress uses a hook system, which inserts components at specific locations (hooks) in the page.
You can see a full visual breakdown of GeneratePress’s Hooks here.
For example, the post title, metadata (e.g. Author, Category) and Comment Section aren’t actually hardcoded into the single.php template.
They’re hooked in.
This means they can also be hooked out (removed) or re-hooked (re-arranged) to create completely custom layouts without editing the template file directly.
Disabling components on specific pages or templates is easily done with the Premium version and requires zero code. You can use the ‘Layouts’ module to deviate from the custom layout, or manually disable elements on specific pages.
And with the premium Hooks module, you can inject (hook) custom content blocks into any page or section of your website.
Some edits still require PHP
If you want to re-arrange core components (like move the comment section you do have to either resort to a simple PHP snippet, in order to unhook and re-hook the comment function.
Almost everything else can be handled codelessly once you get the hang of GeneratePress Elements.
Performance is one of the most common reasons people buy GeneratePress over competitors like Blocksy, and to be fair, GeneratePress’s performance is excellent.
You’ll be hard-pressed to find a theme with faster load times, and we clocked a blank install at 831ms with a Largest Contentful Paint (LCP) time of 509ms.
That’s sub-second load times on $10/month Cloudways hosting, with zero optimization.
Performance vs other Themes
In our head-to-head comparison, GeneratePress beat out both Astra (the closest competitor) and Blocksy on load times and GTMetrix scores.
The data tells the whole story. If you want speed, GeneratePress has it.
Gutenberg Integration is the secret speed sauce
The baseline scores are great, but they don’t tell the whole story. Once you load up a site with plugins and content, the performance of the blank theme doesn’t matter much.
But GeneratePress has a big edge here, thanks to its deep Gutenberg integration which lets you build custom theme layouts and inject complex content layouts using only the block editor.
This can easily save you multiple plugins and even replace speed-killing plugins like page builders (e.g. Beaver Builder + Beaver Theme).
Because head-to-head, Gutenberg kicks every page builders but on speed (Oxygen builder is the exception, but it’s not really page builder, nor is it suitable for non-devs).
In all, GeneratePress Premium includes 12 modules. Each module can be enabled (or disabled) in order to squeeze every last drop of performance.
The Premium Modules fall into 3 categories:
- Site Library
- Menu Plus
- Secondary Nav
- Sticky Nav
- Off-Canvas Panel
- Disable Elements
- Theme Builder
Here’s a quick overview of each premium module (in alphabetical order)
Add background images to supported theme components such as the header.
Adds a masonry and column layout option to your archive pages. You can also adjust the location of the featured image on both single posts and archive pages.
It also lets you enable/disable post meta items like comment count, Category, Tags, for both archive items and single posts.
Infinite Scroll: Add AJAX-powered infinite scroll to your archives, instead of the default pagination.
Control the copyright text displayed in the theme footer. You can easily edit it or remove it altogether.
Manually disable theme components on a per-page basis, to easily customize one-off layouts. For example, you can remove the header or featured image on a specific page.
To remove elements for multiple pages, you can use the Layouts module instead.
The Elements module is the largest and most powerful premium module. It turns GeneratePress into a full-fledged theme builder, with extensive Gutenberg block support.
It’s too complex to describe here, so we’re doing a deep dive later in this review.
The Menu Plus module gives you more options for designing your site navigation. It includes:
- Off-Canvas Panel (slide-in side menu)
- Sticky Navigation (menu sticks to the top of the screen)
- Mobile menu customization
Adds a secondary menu location with styling options.
A rudimentary page builder that lets you create simple WYSIWYG sections for each page. This was introduced pre-Gutenberg and isn’t particularly useful anymore.
Adjust spacing (padding & margin) for multiple theme containers and components.
Granular control over the fonts used on your website. You can select exactly which fonts and styles should be loaded on your site (supports Google fonts). Then you can assign each font to specific element types, such as headings, body text, widgets, etc.
The Elements module is the #1 selling point of GeneratePress premium. It takes a basic theme and turns it into beginner-friendly theme builder.
There are four Element types, each with its own functionality
- Hooks: Inject content blocks into any GeneratePress hook location. Use HTML, PHP, Shortcodes, or WYSIWYG.
- Layout: Change layouts on specific areas of your site
- Header: Easy custom page/post headers with a few clicks. Can fine-tune which posts will display each header design.
- Blocks: Gutenberg-based theme builder. Lets you design almost any theme component using Gutenberg blocks, including headers, hero sections, footers, and more. You can even build custom loops (like an archive page) or even full post templates.
The Hook Element is a visual UI for inserting content into any of GeneratePress’s 50+ hook locations, using custom conditions to fine-tune your display rules.
Hooks are best for adding PHP snippets, custom HTML or shortcodes.
Here are a few examples of how I use GeneratePress hooks on my own site:
- Add breadcrumbs to GeneratePress
- Add an Elementor hero section to a custom post type (using a shortcode)
- Load Fontawesome on specific posts
The Layout Element lets you change the default template or layout for a subset of posts (for example, a specific category). You can change the sidebar layout, width, and remove individual theme components.
The targeting is controlled via the display rules, and you can combine conditions to target the exact posts or pages you want.
The Header Element is an easy way to create customized post headers. For example, you can create a custom header design for a specific post type or category.
The Header element lets you insert theme elements like the post title and post meta. You can even use the featured image as the background image (with optional overlay).
Here’s a demo of how it works:
You get plenty of controls over the layout, spacing, and background for your page header. You also have access to special template tags which will insert dynamic post data like the title (and automatically remove it from the default template location).
Block Elements are the most powerful of all the Element types. Block Elements can inject Gutenberg blocks and block-based layouts almost anywhere on your site.
Better yet, GeneratePress integrates seamlessly with the free GenerateBlocks plugin, so that you can use dynamic data like custom fields, post meta, featured images, post URLs and more.
There are several types of block element you can create:
- Hook: Insert blocks into any GeneratePress hook location
- Page Hero: Create a custom page hero section using blocks (rather than HTML like the Header Element)
- Site Header: Build a block-based site header, replacing the default header. This is comparable to a theme builder like Elementor Pro.
- Content Template: Build a complete template using blocks, such as a single post template, custom post type template, archive template, or loop item.
- Post Meta Template: Change the default post meta structure
- Post Navigation Template: Replace the default post navigation links with block-based navigation. A good example is the crypto starter site. You could also build something like Backlinko’s SEO Hub navigation.
- Site Footer: Build a footer with blocks
- Left/Right Sidebar: Create custom sidebars
All of block elements have the same comprehensive display rules, which let you define the conditions where they should display.
There is definitely a learning curve with block elements, and you’ll want some CSS skills to enhance your designs, but once you get the hang of these feature it’s game-changing. Block Elements convert GeneratePress into a true block-based theme builder.
If you want to style your GenerateBlocks visually, you can upgrade to GenerateBlocks Pro. Alternatively, you can use a visual CSS editor like MicroThemer for complete control over your theme styles without touching CSS.
As mentioned above, the Block Element deeply integrated with the separate GenerateBlocks plugin. This free plugin lets you design theme components using Blocks, and lets you access special tags like Post Meta, Post Titles, Featured Images and more.
There is a pro version of GenerateBlocks, but all the core features are included in the free version. The paid upgrade is more about pre-build layouts and additional visual styling features (such as animations).
Adding GenerateBlocks to a block Element
Using GenerateBlocks in your Block Element designs is simple. Simply choose any compatible GenerateBlocks block from the available blocks.
Each of the 4 GenerateBlocks has a dynamic data component that lets you access special dynamic fields like the post title and inject them dynamically into the current post.
Simply select the dynamic data button to select the field or data type you want to pull from.
Each GenerateBlock has in-depth styling controls that let you adjust color, layout, typography and spacing. You can even customize these settings for different screen sizes (fully responsive).
GeneratePress Premium gives you full access to the GeneratePress site library. There are no demo sites available with the free version.
GeneratePress’s Site Library is on the smaller side, though the quality is decent. None of the sites are heavily designed but rather simple customizations making it easy to jumpstart a new professional looking site.
Many of the newer library sites are built using GeneratePress Elements and block-based content templates, to further customize the design. For example, the Crypto demo site has custom post navigation built with GenerateBlocks.
Minor Gripe: I wish GP/GenerateBlocks would offer importable content templates or simple block layouts to help users get up and running with this powerful feature. Currently the only way to see a pre-built block design is by importing site from the site library.
Supported Page Builder
Currently, GeneratePress’s Site Library features designs from only two page builders:
- GenerateBlocks / Gutenberg
There are no designs available in both Gutenberg and Elementor. All demo sites are either/or.
Site Library Examples
Here’s a quick look at some of my favorite designs from the Site Library.
Built With: Gutenberg / GenerateBlocks
Scribe is a clean, modern looking design with plenty of white space. It’s a Gutenberg-based site that makes extensive use of GeneratePress’s theme builder features, including custom post headers and post navigation built with GenerateBlocks.
I recommend importing this site on testing server to play around with the block-based templates and play around with GeneratePress Elements & content templates.
Built with: Gutenberg / GenerateBlocks
Volume is a modern media site built with GenerateBlocks.
It has several custom elements that have built using GenerateBlocks and the Elements module.
Custom features include:
- Post header with featured image
- Post navigation
- Archive post grid layout
- Archive navigation
- Author bio box in sidebar
Volume is one of most production-ready designs in the site library and also a great example of how you can customize GeneratePress using content templates, page headers and other theme-building features.
Shop is a simple but elegant WooCommerce site built using Gutenberg.
Support & Documentation
Let me be clear up front GeneratePress Support is Excellent. Literally every question in their premium support forum gets answered, and tricky questions are addressed directly by Tom Usborne (the lead developer).
Also, because of GeneratePress’s popularity, nearly all of my questions have already been answered in the support forum, and are easily found with a simple Google search “Generatepress + query”.
In fact, I’ve only needed to open two support topics in the 7 years that I’ve owned GeneratePress.
Though the team only guarantees support directly for the theme and theme functions, they frequently go above and beyond, even writing custom PHP and CSS snippets for advanced customization of GeneratePress’s various hooks and filters.
GeneratePress’s documentation is pretty good, but not best in class. The theme has evolved a lot over the years, especially with the new block-based theme building using the Elements module.
GeneratePress’s documentation gives a basic overview of theme features, and they’re releasing some simple tutorial videos on their Youtube channel to help show the capabilities of more complex features like the Block Element.
These videos are definitely helpful, but certainly not comprehensive. You’ll need to spend some time learning the features on your own or watch an in-depth tutorial from another YouTuber like Mike Oliver.
I also wish there was more complete documentation for all of GP’s many filters and hooks, not just the most common ones. Hopefully this can get built out over time. I also think a crowd-sourced Wiki could be quite helpful.
Overall, GeneratePress has the best support of any theme I’ve purchased, hands down.
Support Rating: 10/10
Competitors & Alternatives
The WordPress theme marketplace is incredibly competitive, and theme studios keep raising their game to stay ahead of the pack (and keep up with WordPress’s own evolution).
In my opinion, the closest competitors to GeneratePress in terms of quality & functionality are:
All of these themes are built around a flexible hook-based framework much like GeneratePress, but each is unique in terms of the UI, features and implementation.
For example, Blocky offers much more visual customization than GeneratePress but has less powerful theme-building features.
Astra is the most popular 3rd-party theme in the history of WordPress and the closest competitor to GeneratePress.
Astra offers a visual header builder, block-based hook system and customizer-based UI for controlling design, layout and typography.
The free version is much more functional than GeneratePress’s, and even includes some free starter site designs. The pro version has well over 100 premium starter sites.
GeneratePress currently has better theme builder features than Astra (though they’re expected to release a block-based theme editor similar to GeneratePress soon). GeneratePress also has more attentive support.
Those differences aside, the capabilities of each theme are very similar.
Compare head-to-head: GeneratePress vs. Astra
Blocksy is perhaps my favorite GeneratePress alternative because of how granular and intuitive the styling controls are.
From the customizer, you can control the color, typography and spacing of nearly every element on your site. GeneratePress only lets you control some elements from the customizer.
Furthermore, you can customize the archive layout, post templates, and even create custom post layouts using only the customizer with a simple drag-n-drop interface. It’s easy enough for complete beginners, but powerful enough for 90% of designs.
Honestly Blocksy is powerful and intuitive that it quickly attracted copycats and forced other themes (like Asta and Kadence) to add more features to their free version.
GeneratePress still has a better theme builder (via Elements) for those that want complete control. It also bests Blocksy in our performance tests and GTMetrix scores.
OceanWP is solid alternative to GeneratePress, especially if you’re running a WooCommerce site. The free version is quite usable, with more design and customization options that GP’s base version.
There are also several free extensions that add pro-level functionality to your site. Addons include: stick anything, modals, social sharing, custom sidebars, a posts slider, and ocean extra (which adds customization options to individual pages).
The collection of start templates is much larger than GeneratePress, and a small number of them are available for the free version.
What OceanWP lacks is the deep theme building features and Gutenberg integration you get with the Elements addon in GP premium. There’s also a smaller community and fewer tutorials and support threads when you run into issues.
Kadence Theme is quite similar to Blocksy, both in design and UI. The features are nearly identical, from the control system to the drill-down for styling options.
Overall Blocksy is a bit more polished and the pre-built layouts look more professional in my opinion. The biggest selling point of Kadence is if you want to buy the entire bundle with includes Kadence’s plugin suite (including Kadence Blocks pro).
This has some native integrations with the Kadence theme (similar to GenerateBlocks with GeneratePress).
Compared to GeneratePress, Kadence has more design options and layout controls, a better free version and similar performance scores.
On the flip side, Kadence is a bit harder to use, has less site-builder functionality, weaker Gutenberg integration, and less impressive support (but still good).
GeneratePress’s pricing is fair and straightforward. There are only two licensing options for GeneratePress Premium:
- Annual: $59/yr for 500 websites
- Lifetime: $249 (one time) for 500 websites
Personally, I own a lifetime license which pays for itself in about 4 years (I’ve already been using in for 7 years).
Why the 500 Site Limit?
I’ve seen some complaints about the 500 site limit when other themes are offering ‘unlimited’ licenses. Frankly I don’t see the issue. Almost nobody is going to hit that limit unless you’re either:
- Flipping 10+ micro sites per week
- A Large agency
- reselling GP licenses (in violation of the TOS)
In the first two cases, your customers should be purchasing their own GP license to access support and updates, and the 3rd scenario is of course why GeneratePress sets a hard limit at 500. It’s to prevent abuse, license sharing, and other shenanigans. It’s a perfectly reasonable quota and virtually impossible to max out if you’re playing by the rules.
GeneratePress has a no questions asked refund policy for the first 30 days of all new purchases (not for renewals). You can cancel your purchase right from your account panel and receive a full refund.
Who should choose GeneratePress?
Your choice of theme is an important decision, and you’re investing not just money but time spent developing your site and learning the ecosystem. So it’s important to choose a theme that matches both your needs (present & future) and skillset.
GeneratePress is a terrific theme, but it’s not the best choice for just anybody.
GeneratePress is a good choice if:
Here are some common scenarios where GeneratePress should be on your shortlist (not all need apply).
You want advanced full-site editing capabilities
GeneratePress has deep Gutenberg integration and allows non-coders to create fully custom sites thanks to the Elements add-on. GeneratePress’s take on FSE (Full Site Editing) is more user-friendly and currently more advanced than the default FSE experience you get from block-based themes like Twenty Twenty Two.
You know CSS (or don’t need perfect design)
GeneratePress has less-granular design controls than competitors like Blocksy. And, the pre-built designs are more about layout than style. That’s just fine for most bloggers and site builders who care about function over form.
But if you want to build something that looks truly custom with GeneratePress, you’ll need to either :
- Know CSS
- Use GenerateBlocks to add design elements
- Use a visual CSS editor like MicroThemer or CSS Hero
- Hire a pro to write CSS for you
You’re a speed Junky
If you love tweaking your site for better performance, care about 100/100 GTMetrix scores, or simply want the best blend of speed and performance, GeneratePress is perfect for you.
You want to focus on content
GeneratePress works great out of the box, and the minimalist take on design means you can have a site up and running in hours (even minutes). The FSE and customization options are there when you want them down the road, but you won’t be distracted in the early phase where content creation matters much more than your design.
You’re using a Page Builder
If you plan to design your site mostly using a page builder/theme builder like Elementor Pro, GeneratePress is a perfect canvas and complement to your page builder. Elementor and Beaver builder integrate well and you easily use them to create custom layouts and even add global styles to add a custom look to your site without touching code.
GeneratePress may not be a good fit it:
Here are some examples where you might be better served by another theme.
You don’t like Gutenberg
Most of GP’s best features (e.g. Elements) are built around the Gutenberg block editor. If you refuse to use Gutenberg, you’ll miss out on most of what makes GeneratePress awesome and have to rely on PHP or page builders to make advanced customizations.
If you love form over function and want gorgeous prebuilt designs or tons of styling controls, GeneratePress is not for you. Instead you’ll want either a uber-customizeable theme like Blocksy, or perhaps a design-first theme from Themeforest that has a ‘look’ that you love.
You don’t want a learning curve
GeneratePress isn’t hard to use necessarily, but the advanced features definitely have a learning curve. Most people won’t be able to jump right in a build a professional looking site using Elements and GenerateBlocks without a bit of practice or at least some design skills.
If you want a theme that looks custom with minimal effort, try Astra or Blocksy.
There’s no doubt that GeneratePress is a top tier theme. If you care about speed, flexibility, or quality support then GeneratePress needs to be on your short list.
I’ve tested dozens of themes over my WordPress career, but I keep coming back to GeneratePress for the majority of my important projects.
As long as you’re okay with the (few) negatives of GeneratePress, and you like the ‘GeneratePress way’ of doing things, you’re going to love this theme.
In my opinion, the most compelling reason to choose GeneratePress is the Elements module. It is hands-down the best Gutenberg-based theme builder I’ve found, at least in terms of raw power. There’s a learning curve, yes, but once you get past it you’ll feel like Neo in the Matrix.