GeneratePress with Elementor

GeneratePress with Elementor: A Featherweight Frame for a Heavyweight Builder

People pick GeneratePress because the vendor says a fresh install adds under 10kb. Then they install Elementor, which brings considerably more than that. The pairing still makes sense in some cases. Here is how to set it up so the theme stays quiet, and how to tell when it is the wrong pairing.

October 13, 2026 · 9 min read

The short answer

GeneratePress works with Elementor as a quiet frame. In the Layout meta box set Content Container to Full Width for Elementor pages, leave Elementor's page layout on Default, and use GP Premium's Disable Elements or a Layout Element to hide titles site-wide. Expect Elementor, not the theme, to decide your page weight.

On this page
  1. Why anyone puts a 10kb theme under a page builder
  2. The Layout meta box, set for an Elementor page
  3. Layout Elements: decide once for every Elementor page
  4. 768 and 767: two breakpoint systems that almost agree
  5. Who draws the header: four options, one recommendation
  6. Colors and fonts across the fence
  7. The speed bill when Elementor moves in
  8. GeneratePress is heading toward blocks, and Elementor is not on that road

Why anyone puts a 10kb theme under a page builder

GeneratePress is built on restraint: SVG icons, cached Customizer CSS, no jQuery in its front-end scripts and, by the vendor's own claim, less than 10kb gzipped on a fresh install. Elementor is built on freedom: drag anything anywhere, with the stylesheets, scripts and container markup that freedom requires. Putting one on the other looks like buying a bicycle to tow a trailer.

There are honest reasons to do it. Agencies like GP Premium's license, $59 a year for up to 500 sites as of October 2026, which makes it a cheap, predictable frame across dozens of client builds. Some teams know Elementor and refuse to learn anything else. And a quiet theme is easier to reason about when something breaks: if GeneratePress barely draws anything, it rarely draws the broken thing. What you should not expect is GeneratePress speed. On an Elementor page the theme is a small share of the bytes.

The wordpress.org description says GeneratePress is completely compatible with all major page builders, naming Beaver Builder and Elementor. The vendor's current docs at learn.generatepress.com mention page builders in exactly one useful place, the Content Container setting below, and say nothing else specific about Elementor. Most of the practical advice lives in GeneratePress's own support forum, and it still holds.

The Layout meta box, set for an Elementor page

Every page and post gets a Layout meta box with four tabs: Sidebar Layout, Footer Widgets, Content Container and Disable Elements, the last one needing GP Premium. In the block editor it sits in the meta box area below the content. If it is missing, open the editor's three-dot menu, then Preferences > General, and switch Layout on under Advanced. Set these before opening Elementor.

  1. 1

    Sidebar Layout: no sidebar

    Elementor pages almost never want the theme sidebar. Choose the no-sidebar option so the content area gets the full container.

  2. 2

    Content Container: Full Width

    The docs describe Full Width as spanning the screen with no padding, for full-width sections built with GenerateBlocks or a page builder. Contained keeps the width but drops the padding. GeneratePress 3.0 renamed this from Page Builder Container, so older tutorials use the old name.

  3. 3

    Leave Elementor's Page Layout on Default

    GeneratePress staff have long advised against the Elementor Full Width template here: keep Elementor on Default and let the Content Container do the widening. Use Elementor Canvas only for true landing pages without a header.

  4. 4

    Disable Elements: Content Title

    With GP Premium, tick Content Title so the theme does not print a second H1 above an Elementor hero. Header, Mobile Header, navigation, Featured Image and Footer are tickable too.

  5. 5

    Footer Widgets: match the site

    Choose how many footer widget columns show, or none, if the page should end on an Elementor call to action.

Padding that refuses to appear is usually this setting doing its job. The docs say both Full Width and Contained remove content padding on purpose. If an Elementor page suddenly sits flush against the screen edge, check the Content Container tab before rewriting any CSS.

Layout Elements: decide once for every Elementor page

Setting four tabs on every new page is how mistakes happen. GP Premium's Elements module includes a Layout Element, which applies the same Layout meta box settings to every page its display rules match. Create one under Appearance > Elements > Add New, choose Layout, set the Sidebar, Footer, Disable Elements and Content tabs, then target the pages Elementor builds. The Content tab of a Layout Element is also the only place to override the site's Container Width for a group of pages.

Display rules have a Location, an Exclude list and a Users filter. Elements with no Location show nowhere. One long-standing bug deserves a warning: when a page named in an Element's Exclude rule is deleted or unpublished, the rule goes blank and the Element is excluded from every page, without warning. On a site where a Layout Element widens every Elementor page, that turns into a site-wide layout collapse the day someone deletes an old page. After any page cleanup, open your Elements and check the rules. GeneratePress Elements not displaying covers the repair.

768 and 767: two breakpoint systems that almost agree

Here is a rare piece of luck. GeneratePress's docs list its device widths as mobile up to 768 pixels, tablet from 769 to 1,024 and desktop from 1,025 up. Elementor's defaults, set under Site Settings > Layout > Breakpoints, are 767 for mobile and 1,024 for tablet. The tablet line matches exactly. The mobile line is one pixel apart, so at precisely 768 pixels the theme header is in mobile mode while Elementor's content is still in tablet mode.

On most sites that single pixel never matters. It matters when an Elementor section hides an element on mobile and the theme's mobile header expects it, or when a QA tester's device happens to sit at 768. If it bothers you, set Elementor's mobile breakpoint to 768 so the two switch together. Moving GeneratePress's menu switch instead means GP Premium's Menu Plus slider or the generate_mobile_menu_media_query filter.

Compare that with themes whose menus switch at 921 or 1,000 pixels, where a whole band of tablet widths shows one tool's desktop layout and the other's tablet layout. For menu trouble on phones, GeneratePress mobile menu not working lists the usual causes.

Who draws the header: four options, one recommendation

Ways to build the header on a GeneratePress site that uses Elementor
How it worksNeedsOur view
Customizer headerLogo and Primary Navigation set under Appearance > CustomizeFree themeLightest; fine for most service sites
Site Header Block ElementHeader built with blocks, replaces the theme header where display rules applyGP Premium; GenerateBlocks recommendedThe vendor's recommended custom header, but it means learning blocks too
Hook Element on generate_headerYour own HTML or shortcode, with Disable Site Header tickedGP PremiumFor hand-written header markup
Elementor Pro Theme BuilderHeader template with display conditionsElementor ProWorks on many GP sites, but GeneratePress documents nothing about it; test carefully

For most GeneratePress and Elementor sites we keep the Customizer header and let Elementor stick to page content. It costs nothing, ships no builder markup on every page and keeps the mobile menu in the theme's hands. Note what the Block Elements doc says about outside blocks: GenerateBlocks is recommended, core blocks work, and blocks from other plugins may not be styled correctly. If a custom header disappears on certain templates, GeneratePress header not showing walks through display rules and Disable Elements in order.

Colors and fonts across the fence

GeneratePress's Global Colors live under Appearance > Customize > Colors. New sites start with seven named swatches (Contrast, Contrast 2 and 3, Base, Base 2 and 3, and Accent), and each becomes a CSS variable such as var(--accent). The docs say those variables appear in the block editor's color pickers. They say nothing about Elementor's pickers, so do not count on a sync.

The practical setup is to keep both lists identical by hand. Enter the brand palette in GeneratePress, enter the same values as Elementor Global Colors in Site Settings, and stop there. GeneratePress forum staff have long recommended ticking Disable Default Colors and Disable Default Fonts in Elementor, which in current Elementor sits on the General tab of Elementor > Editor > Settings. That lets Elementor widgets inherit the theme's typography instead of Elementor's built-in defaults.

The speed bill when Elementor moves in

GeneratePress's own levers still matter, they just move smaller numbers. 'Cache dynamic CSS' is on by default. 'Dynamic CSS Print Method' prints inline or, with GP Premium, writes an external file; vendor staff call the file option arguably better but not by a lot when an optimization plugin is in use. Neither setting touches Elementor's CSS, which follows Elementor's own CSS Print Method, External File by default.

The bigger savings sit on the Elementor side: containers instead of old sections and columns, fewer add-on packs, Element Caching for complex widgets and Optimized Image Loading for the hero. The GeneratePress speed guide covers the theme settings in order, and Elementor slow website covers the builder. Measure a real service page, not the home page alone.

On an Elementor page, GeneratePress is the lightest thing in the room, which is why speeding up the theme rarely helps.

GeneratePress is heading toward blocks, and Elementor is not on that road

Direction matters for a site you plan to keep for years. GeneratePress's August 7, 2026 blog post describes GP Premium 3.0 bringing a Template Engine that replaces Elements for fully block-built sites, and the GenerateBlocks Pro 2.8 Design Systems update was still a release candidate on September 22. GP Premium 3.0 had not shipped when we checked. None of that breaks an Elementor site today. It does mean the vendor's new tools assume blocks, and an Elementor site will use less and less of what it pays for.

That leaves three sensible paths. Stay as you are and keep the stack lean. Move page content into GenerateBlocks, the theme's native partner, as described in GeneratePress with Gutenberg. Or leave WordPress when the site needs things neither tool does well.

Stay on GeneratePress and Elementor when

  • Your team designs in Elementor weekly and the pages pass Core Web Vitals
  • You manage many small client sites and the 500-site license keeps costs flat
  • The header stays in the Customizer and Elementor stays in the content

Rethink it when

  • You picked GeneratePress for speed and Elementor ate the gain
  • Layout Element rules keep breaking after page cleanups
  • The site needs member logins, quote tools or data-driven pages

For the third column, GeneratePress vs Next.js gives the theme every benefit of the doubt, and page builders vs Next.js explains what Elementor's markup costs. A move means pulling content out of Elementor's JSON, described in Elementor to Next.js, with the theme side in GeneratePress to Next.js. When the editor itself refuses to load, start with Elementor theme conflicts and the GeneratePress repair hub. Our Elementor developers handle either route, and the full roster of reviews is in the WordPress themes section.

Questions people ask before they call

It is the old name for Content Container, renamed in GeneratePress 3.0. In the Layout meta box, set it to Full Width for Elementor pages that run edge to edge, or Contained to keep the site width without padding. Both options remove the theme's content padding on purpose.

Usually neither. GeneratePress staff advise leaving Elementor's page layout on Default and setting the Content Container to Full Width instead, so the theme header and footer stay in place. Use Elementor Canvas only for landing pages that should have no header or footer at all.

The theme stays small, but Elementor's stylesheets, scripts and container markup will make up most of each page. Expect speed to depend on how you build in Elementor: containers, fewer add-ons and optimized images matter more than any theme setting. Our GeneratePress review explains what the theme itself contributes.

GeneratePress documents its Global Colors as CSS variables that appear in the block editor's color pickers. It does not document an Elementor sync, so enter the same colors in Elementor's Global Colors and tick Elementor's Disable Default Colors and Fonts so widgets inherit the theme.

Astra does more work for Elementor users, including automatic full-width settings and sharing its palette with Elementor. GeneratePress does less and stays lighter, with a far larger site allowance on its license. The side-by-side is in Astra vs GeneratePress, and builder-first buyers should also read GeneratePress vs Bricks.

Keep reading

Free · No obligation

Find out whether your GeneratePress build needs Elementor

We will look at how your pages are built, what Elementor adds to each one and whether GenerateBlocks or a rebuild would serve you better. You get a straight answer and a fixed quote if work is needed.

Which of these sounds like you? (pick any)

Rather talk now? Call (210) 346-0848.

CallGet a quote