This Elementor complete guide covers everything from first install through advanced Theme Builder usage — written by a WordPress developer who has built and handed over dozens of Elementor sites to clients. Elementor is the page builder I use on the majority of my client projects, and the one I recommend to anyone who wants serious design control without writing custom HTML and CSS from scratch. — the same progression I take clients through when they want to own and maintain their site after delivery. Whether you are designing your first WordPress page or trying to get more out of a Pro licence you already own, this guide covers it all in the right sequence.
I have built sites in Elementor that rank well on Google, load fast, and look exactly how the client envisioned. I have also seen Elementor used badly — producing bloated, slow, visually inconsistent sites. The difference is almost always in how it is configured and used, not the tool itself. This guide explains the good patterns and the pitfalls to avoid.
What Is Elementor: Who This Elementor Complete Guide Is For
Elementor is a visual page builder plugin for WordPress. It replaces the process of editing raw HTML, CSS, and PHP template files with a drag-and-drop interface where you see your design taking shape in real time on the actual page. It is the most widely used page builder in the WordPress ecosystem, powering a large share of all active WordPress sites.
Elementor’s core proposition is design control without code. You can create complex multi-column layouts, add animations, control typography and colours down to the element level, build custom headers and footers, and produce designs that look like bespoke development at a fraction of the cost and time. For freelancers delivering client sites, it dramatically accelerates development. For business owners managing their own site, it makes ongoing content updates and layout changes achievable without a developer.
Who Should Use Elementor
- Freelance web designers and developers building client sites quickly
- Small business owners who want to manage their own website without code
- Bloggers and content creators who want more design control than the block editor provides
- WordPress agencies building multiple sites with consistent design systems
Who Might Choose Something Else
- Developers building performance-critical sites who prefer custom theme development
- Sites running entirely on Gutenberg who want a fully native WordPress workflow
- High-traffic sites where every kilobyte of page weight matters significantly
For most client-facing WordPress projects, Elementor is the right choice. It balances design capability, client usability, development speed, and a large ecosystem of compatible themes and plugins.
Elementor Free vs Pro: What You Actually Need
Elementor has a free version available at wordpress.org/plugins/elementor/ and a paid Pro version. Here is an honest comparison of what each offers:
| Feature | Free | Pro |
|---|---|---|
| Drag-and-drop page builder | Yes | Yes |
| Basic widgets (text, image, button, etc.) | Yes (40+ widgets) | Yes (90+ widgets) |
| Theme Builder (headers, footers, archive pages) | No | Yes |
| WooCommerce Builder | No | Yes |
| Form widget with integrations | No | Yes |
| Popup Builder | No | Yes |
| Custom CSS per element | No | Yes |
| Global Widgets | No | Yes |
| Pro templates and kits | No | Yes |
| Role Manager | No | Yes |
For a business website with custom header and footer, contact forms, and a professional template kit, you need Pro. For a simple blog or portfolio where you just need page-level layout control and the native WordPress menu and header are acceptable, Free may be sufficient.
My recommendation: if you are building a client site or a serious business website, start with Pro. The Theme Builder alone is worth the price — not having it means your header, footer, and single post template are controlled by your theme rather than Elementor, which limits design consistency. For personal projects or testing, Free gives you enough to learn the interface.
Elementor Pro is licensed per website (not per user), at a cost depending on how many sites you are activating it on. If you are managing multiple client sites, the unlimited sites plan is by far the best value.
Installing and Setting Up Elementor
Installation is straightforward:
- In WordPress admin, go to Plugins → Add New
- Search for “Elementor”
- Install and Activate the Elementor plugin
- If you have Pro, download the Elementor Pro zip from your account at elementor.com, then install via Plugins → Add New → Upload Plugin. Activate and connect your licence.
Initial Configuration Steps
After activating, go to Elementor → Settings:
- General tab: Disable post types you will not use with Elementor (if you only want Elementor for Pages, uncheck Posts and other CPTs). Fewer active post types means less global CSS loaded on types Elementor does not manage.
- Performance tab (Pro): This is the most important configuration step for speed. Enable Improved Asset Loading, disable unused CSS features (transition effects, icon libraries like Font Awesome if you use SVGs instead), and set fonts to load asynchronously. More on this in the Performance section.
- Experiments: Enable the Flexbox Container if not already active — it is Elementor’s modern layout system replacing the legacy column/section structure. It generates less markup and is faster. New projects should use Containers exclusively.
Choose a Compatible Theme
Elementor works with any theme but performs best with themes built to be Elementor-compatible. My current recommendation for most projects is Hello Elementor — the official companion theme from the Elementor team. It is intentionally minimal, loads no unnecessary CSS or JavaScript, and is fully optimized as an Elementor base. Astra and GeneratePress are strong alternatives with more built-in styling options if a more fully-featured theme is needed.
Avoid using Elementor with heavy premium themes (Avada, Betheme, etc.) — these themes already include their own page builder functionality, generating conflicts and significant style overhead.
Understanding the Elementor Interface
Once you open any page or post in Elementor by clicking “Edit with Elementor,” you will see the editor split into two panels:
The Left Panel
The sidebar contains everything you need to build and configure your page:
- Widgets panel (the grid icon): All available drag-and-drop elements organized by category
- Page Navigator (the document/layers icon): A tree view of every element on the page — extremely useful on complex pages for selecting buried elements
- Style panel (paint bucket icon): When any element is selected, the Style tab in the left panel shows its visual properties
- Advanced panel (gear icon): Responsive visibility, custom CSS, motion effects, and positioning for the selected element
The Canvas
The live canvas shows your page as it actually looks. You can click any element directly on the canvas to select it and its settings will appear in the left panel. Right-clicking any element opens a context menu with options to duplicate, delete, copy/paste, and save as a widget or template.
Bottom Toolbar
Contains responsive preview toggles (desktop, tablet, mobile), undo/redo, Revision History, and the Publish/Update button.
The Structure: Containers, Sections, Columns
With the modern Flexbox Container system active, every page is built from nested containers. A Container is a box that holds either widgets or other containers. You control the flex direction (row or column), alignment, spacing, and wrapping behaviour within each container. This system is more flexible and generates less markup than the older Section → Column → Widget hierarchy.
Building Your First Page
Here is the workflow I use when building a new page from scratch in Elementor:
1. Set Page Structure First
Before adding any content, plan your page sections. A basic service page might have: hero section, three feature columns, testimonial, call-to-action. Map this structure mentally before adding any widgets. Changing structure later is more disruptive than building it right the first time.
2. Add Containers
Click the “+” icon on the canvas to add your first container. For a full-width hero section, select a single column layout and set the container width to Full Width in the layout settings. For a three-column feature section, add a row container and then add three inner containers side by side.
3. Set Container Styling
Before adding content widgets, set background colour, background image, padding, and minimum height at the container level. Styling the container before its children makes alignment much easier.
4. Drag Widgets Into Containers
Drag widgets from the left panel into the containers on the canvas. The most commonly used widgets for a standard page are: Heading, Text Editor, Image, Button, Icon Box, and Spacer.
5. Configure Widget Style
Each widget has three tabs in the configuration panel: Content (the actual content and settings), Style (typography, colour, spacing), and Advanced (padding, margin, responsive, CSS). Use Global Colours and Global Fonts (set up under Elementor → Global Settings) so your typography and colour palette are consistent and easy to update site-wide.
6. Set Up Global Fonts and Colours First
Before you start designing, configure Global Colours and Global Fonts under Style → Global Settings. These become the foundation every widget draws from. If you later need to update the brand colour, changing one global colour updates every element using it across the entire site — as opposed to hunting through 200 individual widget colour settings.
Widgets: The Complete Reference
Elementor’s widget library covers most web design needs. Key widget categories:
Basic Widgets (Free)
- Heading: H1 to H6 headings with full typography control. The most important widget for SEO — ensure your H1 is set correctly and only appears once per page.
- Text Editor: Full rich-text body copy with paragraph, bold, italic, links, and lists.
- Image: Display images with alt text (critical for SEO), links, lightbox, and CSS filters. Always fill in the Alt Text field for every image.
- Button: CTA buttons with hover effects, icons, and links. Supports custom CSS classes for advanced styling.
- Icon: Vector icon display from Font Awesome, Eicons, or custom SVG upload.
- Image Box: Combined icon/image + heading + text card layout — the standard building block for feature sections.
- Spacer: Blank space to control vertical rhythm. Use padding on containers where possible instead of spacer widgets — cleaner markup.
- Video: Embeds YouTube, Vimeo, or self-hosted video with lazy loading option.
Pro Widgets
- Form: Multi-field contact form with conditional logic, file upload, and direct integrations with MailChimp, ActiveCampaign, HubSpot, and 20+ others.
- Posts: Dynamic post grid/list display, filterable by category, tag, or custom taxonomy. The foundation for blog listing pages.
- Portfolio: Filterable image gallery for design portfolios.
- Testimonial Carousel: Review and testimonial display with auto-play and responsive settings.
- Countdown: Countdown timers for promotions and launches.
- Login, Registration: Custom-styled WordPress login and registration forms without additional plugins.
- Table of Contents: Auto-generates a linked table of contents from page headings — useful for long-form content SEO.
Templates and Kits
Elementor’s template library lets you import pre-designed page layouts, single sections, or complete site kits in seconds. For new projects, starting from a kit that matches your industry and brand direction is significantly faster than building from scratch.
Page Templates
Page templates are full-page designs you can import and then edit with your own content. Elementor’s library includes templates for homepages, about pages, service pages, contact pages, and landing pages. Import a template as a starting point, then systematically replace every text, image, and colour with your own.
Block Templates
Block templates are pre-designed sections — hero blocks, feature blocks, testimonial blocks, CTA blocks — that you can insert into any page. Useful when you want to build a custom page but want reference designs for individual sections.
Site Kits
Site kits import an entire website design in one action: all page templates, Theme Builder templates (header, footer, single post, archives), global colours, and global fonts. This is the fastest way to establish a complete design system for a new site. After importing a kit, go through each template and customize it to match your brand before the site goes live.
When selecting a kit, prioritize ones with clean, minimal design and verified performance. Avoid importing kits that rely heavily on animation, video backgrounds, or complex JavaScript — these features look impressive in the preview but add significant performance overhead.
Theme Builder: Headers, Footers, and Single Templates
Elementor’s Theme Builder (Pro) is the feature that makes Elementor a complete site-building solution rather than just a page-level tool. It lets you design every part of your WordPress theme — not just page content — using the same visual editor.
Creating a Custom Header
- Go to Elementor → Theme Builder → Header → Add New
- Design your header in the Elementor editor — logo, navigation, contact info, whatever your site needs
- Set the Display Conditions: “Entire Site” applies the header globally; you can also limit it to specific pages or post types
- Save and Publish
With a custom Elementor header, you control exact positioning, behaviour on scroll (sticky headers), and the responsive mobile menu design. Your theme’s default header is completely replaced.
Single Post and Page Templates
The Single template controls how individual blog posts display — the layout around your post content, where sidebar or author bio appears, related posts placement, and CTA positioning. Without a Theme Builder template, this is controlled by your theme’s PHP template file. With Elementor Pro, you design it visually and apply it to all posts (or to specific categories or post types).
Archive Templates
Archive templates control how category, tag, and date archive pages look — specifically the blog grid or list that appears when someone visits /category/seo/ or /tag/wordpress/. You can add a header section above the posts grid, customize the post card layout, and add sidebar elements without touching PHP.
Dynamic Content Tags
In Theme Builder templates, text widgets can reference dynamic content — the current post’s title, excerpt, date, author, featured image, custom fields, and ACF fields. This allows you to design one template that automatically populates with the correct content for every post it is applied to.
Responsive Design in Elementor
Every Elementor setting — width, padding, margin, font size, visibility — can be set independently for desktop, tablet, and mobile viewports. This is one of Elementor’s strongest features and one of the most commonly underused.
Responsive Breakpoints
Default breakpoints in Elementor are: Desktop (1025px+), Tablet (768px to 1024px), Mobile (below 767px). Elementor Pro allows you to add custom breakpoints (Widescreen, Tablet Portrait, Mobile Landscape) for more granular control over how designs adapt across device sizes.
How to Edit Responsive Settings
- Switch to the device view you want to edit using the responsive icons in the bottom toolbar
- Select any widget or container
- In the left panel, settings with a phone/tablet icon next to them are responsive — changing them while in tablet or mobile view sets the value only for that breakpoint
- Settings without a responsive icon apply globally across all devices
Common Responsive Fixes
- Multi-column layouts collapsing poorly: Set the container direction to “column” on mobile so elements stack vertically instead of shrinking horizontally
- Text too large or too small on mobile: Override font size explicitly for mobile in the widget’s Style tab while in mobile preview mode
- Hide elements on specific devices: Advanced tab → Responsive → Hide on Desktop/Tablet/Mobile for device-specific content
- Padding differences between desktop and mobile: Always set mobile padding explicitly — desktop padding often renders disproportionately large on small screens
Elementor and SEO: Best Practices
Elementor is sometimes claimed to be bad for SEO. In my experience, this is a misdiagnosis. Elementor is neutral — it can be used in ways that help or hurt SEO, but the tool itself is not the issue. Here is how to use it well from an SEO perspective:
Heading Hierarchy
Every page should have exactly one H1. In Elementor, the Heading widget defaults to H2 — check that your page title or main page heading is set to H1, and that the remaining headings follow a logical H2 → H3 hierarchy. Using H2 for the first heading on a page because “it looks right” is a common mistake with SEO consequences. For WordPress posts, the post title is the H1 by default; your first in-content heading should be H2.
Image Alt Text
Every Image widget has an Alt Text field. Fill it for every image, using descriptive text that includes your focus keyword where genuinely relevant. Never leave alt text blank on meaningful images — this is both an SEO and an accessibility issue.
Semantic HTML
Elementor generates div-based markup by default. For important structural elements, use the HTML tag setting available on containers and sections to output header, main, section, article, or footer tags. This helps search engine crawlers understand page structure.
Schema and Structured Data
Add structured data via an SEO plugin like RankMath rather than through Elementor’s custom HTML widget. Separating structured data from page design makes it easier to maintain and audit. My WordPress SEO guide covers RankMath configuration in full, including schema setup for different post types.
Page Speed Impact
The SEO concern most commonly associated with Elementor is page speed. Elementor does add CSS and JavaScript overhead. The Performance section below addresses this directly. A well-optimized Elementor site can absolutely achieve 90+ PageSpeed scores — I have built and verified several. The technical SEO audit guide covers how to measure and fix the performance factors that affect ranking.
Performance Optimization
Elementor’s performance impact is real but manageable. Here is what I do on every client site:
Elementor Performance Settings (Pro)
Go to Elementor → Settings → Performance:
- Improved Asset Loading: Loads Elementor CSS only on pages that use Elementor. This alone can eliminate 200 to 400KB of CSS loading on non-Elementor pages.
- Load Font Awesome: Set to “Disable” if you are using SVG icons or a different icon system. Font Awesome adds ~76KB per page load.
- Google Fonts: Set to “Disable” if you are self-hosting fonts, or to “Early Access” if you need them. Never load Google Fonts via both Elementor and your theme simultaneously.
Use Flexbox Containers
The legacy Section/Column layout generates more nested div elements than the Flexbox Container system. New sites should use Containers exclusively; for existing sites, migrating to Containers (via Elementor’s built-in converter) reduces DOM size and CSS specificity conflicts.
Avoid Global CSS in Custom CSS Fields
Elementor’s custom CSS per-element is scoped to that element’s ID. If you find yourself writing the same CSS on 20 different widgets, move it to your theme’s custom CSS or a stylesheet — it results in far less inline CSS bloat in the page source.
Limit Animations and Motion Effects
Entrance animations and parallax effects rely on JavaScript and CSS transitions. They also require the browser to do additional layout calculations during scroll, which can increase INP and Cumulative Layout Shift. Reserve animations for elements where they meaningfully improve user experience — not as default behaviour throughout the site.
Regenerate CSS and Flush Cache After Major Changes
After significant design updates, go to Elementor → Tools → Regenerate Files & Data to ensure Elementor’s CSS files are rebuilt cleanly. Then flush your caching plugin’s cache so visitors receive the latest version.
Common Problems and Solutions
White Screen After Enabling Elementor
Usually caused by a PHP memory limit that is too low. Check wp-config.php for WP_MEMORY_LIMIT and increase it to at least 256M. Elementor’s minimum recommended memory is 256MB.
Changes Not Saving or Appearing
Clear your browser cache, then clear your caching plugin’s cache. Most “my changes aren’t showing” reports are a cached version of the old page being served. Always flush cache after editing in Elementor.
Elementor and Gutenberg Conflict
Pages edited with Elementor show blank content in the Gutenberg editor (and vice versa). This is by design — they use fundamentally different content storage methods. Decide per-site which editor to use and avoid mixing them on the same post type.
Mobile Layout Broken
Usually a missing mobile-specific responsive setting. Switch to mobile preview in the Elementor editor and check container padding, column direction, and font sizes. Common culprit: a container set to horizontal Flex direction on desktop that needs to switch to column direction on mobile.
Slow Page Builder Loading Speed
The Elementor editor itself loading slowly (not the front-end page) is usually a server resource issue. Increase PHP memory limit, check server CPU/RAM allocation, and ensure the Elementor editor is not being served through a page cache (most caching plugins automatically exclude wp-admin URLs).
Frequently Asked Questions
Is Elementor free?
Elementor has a free version with 40+ widgets and basic page building functionality available on the WordPress plugin repository. Elementor Pro adds the Theme Builder, Form widget, WooCommerce Builder, Popup Builder, custom CSS per element, and 90+ widgets. For a complete, professionally designed website, Pro is necessary. The free version is suitable for learning the interface and simple page layouts.
Does Elementor slow down WordPress?
It can, if not configured correctly. Elementor adds CSS and JavaScript to pages it manages. With Elementor Pro’s Performance settings enabled, Improved Asset Loading activated, and unnecessary icon libraries disabled, the performance impact is manageable and a 90+ PageSpeed score is achievable. A custom-coded theme will always be faster, but Elementor with proper configuration is competitive for most business websites.
Can I use Elementor with any WordPress theme?
Yes, Elementor works with any theme. For best performance and compatibility, use a minimal theme designed to work with Elementor: Hello Elementor (the official Elementor companion theme), Astra, or GeneratePress. Avoid pairing Elementor with heavy multipurpose themes that include their own page builder functionality — the CSS and JavaScript conflicts and overhead are rarely worth it.
What is the difference between Elementor and the Gutenberg block editor?
Gutenberg is WordPress’s native block editor, built into the core software. It has improved significantly over recent versions and is excellent for content-focused sites. Elementor provides more granular design control — pixel-level spacing, advanced typography, complex section layouts, animations, and the Theme Builder. For business websites requiring precise design execution, Elementor offers more flexibility. For content-heavy blogs where writing experience matters more than design control, Gutenberg may be the better choice.
Can I build a complete website with Elementor without a developer?
Yes — that is what it is designed for. A non-developer using Elementor Pro with a compatible theme and a site kit can build a professional multi-page website with custom header, footer, contact forms, and SEO-optimized content. The learning curve for the full feature set is real but manageable. I regularly hand over Elementor-built sites to clients with no technical background and they successfully update and add content independently.
Should I use Elementor or Divi for my WordPress site?
Both are capable page builders. I prefer Elementor for most projects because of its active development pace, the native Hello Elementor theme, and the cleaner separation between design and content. Divi is owned by Elegant Themes and includes more built-in theme functionality. For a standalone comparison, my Elementor vs Divi article covers both in detail. For most new projects in 2026, Elementor’s Flexbox Container system and performance improvements give it an edge over Divi’s older architecture.
Need help building or optimising your Elementor site? I’m Daniyal — freelance WordPress developer & Elementor specialist. Contact me or find me on Upwork.














