Beaver Builder Setup: Custom Modules & Optimization for WordPress
When working with page builders, bloated code and slow loading are common issues. Elementor, despite its popularity, generates tons of unnecessary wrappers and scripts that hurt LCP and TTFB. Beaver Builder solves this: its code is clean, predictable, and performance is 30% higher. We use it in projects with strict Core Web Vitals requirements — over 5 years of experience and 30+ successful implementations.
Beaver Builder isn't just 'another builder.' Its architecture delivers three key benefits: clean HTML (each module outputs exactly the markup you defined, no clutter), update stability (the plugin rarely breaks existing content, unlike competitors), and an API for development (you can extend functionality with custom modules without hacks). Compare with Elementor: a typical Beaver Builder page weighs 40% less, and LCP drops by 0.8–1.2 seconds on average. These are results from our measurements on dozens of projects. We guarantee clean code and documentation after every project.
How Beaver Builder Affects Core Web Vitals
Builders like WPBakery generate tons of nested divs. Beaver Builder does the opposite: minimal wrappers, only semantic tags. This directly improves LCP (the heaviest block loads faster) and reduces TTFB due to smaller HTML size. Moreover, Beaver Builder doesn't load its scripts on pages without its blocks, unlike Elementor, reducing total page weight and speeding up INP. If your project is on WordPress and you focus on Core Web Vitals, setting up Beaver Builder is the right choice.
Why Order Custom Modules?
Without programming skills, you can't add specific functionality — sliders, calculators, interactive maps. We develop modules for your task using the standard API. Here's a simple module with an icon and heading:
// my-module/my-module.php class MyTextIconModule extends FLBuilderModule { public function __construct() { parent::__construct( [ 'name' => 'Text + Icon', 'description' => 'Text with icon', 'category' => 'My Modules', 'partial_refresh' => true, 'dir' => __DIR__, 'url' => plugins_url( '', __FILE__ ), ] ); } } FLBuilder::register_module( 'MyTextIconModule', [ 'general' => [ 'title' => 'General', 'sections' => [ 'content' => [ 'title' => 'Content', 'fields' => [ 'title' => [ 'type' => 'text', 'label' => 'Heading', ], 'icon' => [ 'type' => 'icon', 'label' => 'Icon', ], ], ], ], ], ] ); The module template (frontend.php) receives data via $settings:
// my-module/includes/frontend.php <div class="my-text-icon"> <?php if ( $settings->icon ) : ?> <i class="<?php echo esc_attr( $settings->icon ); ?>"></i> <?php endif; ?> <h3><?php echo esc_html( $settings->title ); ?></h3> </div> What Problems Does Beaver Builder Setup Solve?
| Problem | Beaver Builder Solution |
|---|---|
| Bloated code, slow loading | Clean HTML, minimal wrappers, selective script loading |
| Difficult maintenance | Predictable markup, no shortcodes or garbage comments |
| Missing custom functionality | API for modules, integration with ACF and Themer |
How We Set Up Beaver Builder for Your Project
The process consists of 5 stages:
| Stage | Duration | Result |
|---|---|---|
| Analysis | 1 day | Page prototypes, module list |
| Installation & basic settings | 1–2 days | Plugin activated, global styles set, templates saved |
| Custom module development | 1–3 days | Modules created per your mockups |
| Integration (ACF, Themer) | 1–2 days | Dynamic content, custom templates |
| Testing & optimization | 1 day | Cache, asset purge, Core Web Vitals check |
Step 1. Installation and Global Settings
We activate the appropriate version (Lite free, Standard/Pro/Agency paid). In Global Settings we set breakpoints (Medium ≤ 992px, Small ≤ 768px), module margin 20px, fonts. This is the foundation for all layouts.
Step 2. Creating Saved Templates
Beaver Builder allows saving rows, columns, modules, and entire layouts as templates. They are stored as fl-builder-template posts. This is convenient for reusing blocks across pages.
Step 3. Custom Module Development
If built-in modules are insufficient, we write our own. The API is well-documented: extend FLBuilderModule, describe fields in register_module(), create frontend.php. See example above.
Step 4. Integration with Beaver Themer and ACF
Beaver Themer is a separate plugin for creating header/footer templates, archives, 404 pages, etc. Display conditions are set like in Elementor Pro. Using field connections (the lightning button), we link ACF fields to modules — this allows dynamic content without programming.
Step 5. Performance Optimization
Beaver Builder caches CSS in wp-content/uploads/fl-builder/cache/. After changes we clear cache via Settings → Tools → Clear Cache or programmatically:
FLBuilderModel::delete_asset_cache_for_all_posts(); Plus: Beaver Builder does not load its scripts on pages without its blocks, unlike Elementor. This reduces total page weight.
What's Included in Beaver Builder Setup (Deliverables)
- Installation and activation of the required plugin edition
- Global style configuration (fonts, margins, breakpoints)
- Creation of saved templates for rows, modules, layouts
- Development of up to 5 custom modules (more discussed separately)
- Integration with ACF and Beaver Themer (up to 3 templates)
- Cache setup and asset purging
- Documentation for created modules (field list, settings description)
- Access transfer and editing instructions
Typical Mistakes When Working with Beaver Builder
Cache conflict: if the page doesn't update after changes, clear the plugin cache and server cache. Incorrect CSS in custom modules: use class prefixes to avoid theme conflicts. Template loss when switching themes: templates are stored in the database as fl-builder-template posts, not tied to the theme, but may display incorrectly. Test on staging.
Timelines and Cost
Estimated timelines: basic setup + 5–8 pages — 1 to 2 days; custom modules, Beaver Themer, ACF — 2 to 4 days. Cost is determined individually after analyzing your project. Get a consultation — we'll assess the scope and give you a price within 1 day.
Beaver Builder is a mature product with an open architecture, recommended by the WordPress community. Order a turnkey setup: we guarantee clean code, performance, and documentation. Just contact us — we'll discuss the details.







