Why Elementor padding, margin and gaps matter
If your Elementor pages look “almost right” but something feels off, it is usually spacing. Headings sit too close to paragraphs. Sections feel cramped. Mobile has random gaps.
Most of that comes down to how you use Elementor padding, margin and gaps.
Get these three under control and your layouts instantly feel cleaner, more consistent and easier to maintain. Ignore them and you end up fighting odd spacing on every project.
In this guide you will learn how padding, margin and gap work in Elementor, when to use each one, and how to build a simple spacing system you can reuse across all your sites.
Padding, margin and gap in plain language
Before you touch any settings, it helps to understand what you are adjusting.
The difference between padding and margin
- Padding is the space inside a container or widget, between the content and its border.
Think of it as breathing room inside it’s box. - Margin is the space you can add manually outside a container, to move containers or widgets further away from one another.
If you are changing the space around the content inside one container or widget, that is padding.
If you are moving one container or widget away from another, that is margin.
What gap does inside containers
When you use Flexbox Containers, Elementor gives you a third spacing control called gaps.
Gap controls the space between items inside a container.
For example:
- The distance between cards in a features row
- The space between a heading, paragraph and button that are stacked vertically
- The space between rows that stack on mobile
Instead of adding margin to every child widget, you set one gap value on the parent container and Elementor spaces the items evenly.
Where to find Elementor padding, margin and gap
You can control spacing on:
- Containers (Flexbox)
- Widgets (headings, buttons, images and so on)
For each of these, spacing lives under the Advanced tab.
- Advanced → Margin
- Advanced → Padding
You can:
- Use linked values so all sides change together
- Unlink values to set top, right, bottom and left separately
- Use different values per device (desktop, tablet, mobile)
On containers with Flexbox enabled you also have:
- Layout → Gaps (for space inside containers between child items)
When to use padding vs margin in Elementor
A lot of messy layouts come from mixing padding and margin at random. Here is a simple rule of thumb.
Use padding for internal breathing room
Use padding when you want to add space inside a container or widget, so content is not touching the edges.
Good use cases:
- Container padding so content has room to breathe
- Padding inside a feature card or FAQ header
- Extra space inside a button
Example values:
- Container padding: 120px top and bottom on desktop, 60px on mobile
- Card padding: 24px all around inside a feature box
- Button padding: 14px vertical, 24px horizontal
Padding defines the comfortable area inside your elements. It is about how content sits within a box.
Use margin for gaps between elements
Use margin when you want to manually adjust the space between one element and another.
Typical uses:
- Adjust the space between two containers when building a complex layout
- Reduce the space between a heading and the paragraph below it
- Add extra space above a call to action container
Good examples:
- Margin bottom on a heading widget: e.g 12px or 16px
- Margin top on a section that needs more separation: e.g 40px or 60px
Try to avoid setting margin on both elements that sit next to each other. Let one of them control the space between to keep things predictable.
How to use gap, padding and margin together
When you combine gap, padding and margin in a structured way, Elementor spacing becomes much easier.
Start with padding on the parent
First, set padding on your main containers.
For example:
- Hero section: 120px padding top and bottom on desktop, 80px on tablet, 60px on mobile
- Left column container holding your heading, text and button: 0px padding
This creates consistent internal breathing room without touching margins yet.
Use gaps to space items inside containers
Next, use gaps on your Flexbox Containers to handle the regular space between items.
Examples:
- Hero section: 100px gaps between the left and right column containers
- Left column container holding your heading, text and button: 32px gaps
- Row of logos: 20px gaps between image widgets
Gap is perfect for:
- Feature grids
- Icon rows
- FAQ items in a stack
- Basically any container that need an even distance between them
If you set gap correctly, you rarely need to add margin to every child widget. One control on the parent container handles it.
Use margin only for fine tuning
Once padding and gap are doing most of the work, margin becomes a tool for specific adjustments.
Use margin when you want to:
- Add extra space above or below a single section
- Tighten the space under one particular heading
- Separate a special call to action block from the content above it
Think of margin as the exception, not the rule. If you find yourself adding margin everywhere, stop and see if gap or padding should be doing that job instead.
Building a simple Elementor spacing system
Random spacing values like 13px here and 47px there quickly make a site feel messy. A simple spacing system keeps everything consistent.
Choose a spacing scale
Pick a small base spacing value, for example:
- 4px
- 8px
Then build a scale from that base, such as:
- 8px
- 16px
- 24px
- 32px
- 48px
- 64px
These are all multiples of your base unit, which keeps your rhythm consistent.
Apply your scale to common patterns
For example:
- Container padding top and bottom: 120px desktop, 80px tablet, 60px mobile
- Inner container gaps: 32px desktop, 32px tablet, 24px mobile
- Gaps between stacked items inside a feature box: 12px or 16px
- Padding inside a feature box: 24px
You do not need to follow this perfectly. The key is to use a small set of values and avoid random numbers that break the rhythm.
If you use components from Element UI, you will notice that spacing already follows a consistent scale. You can use those layouts as a reference for your own system.
How Element UI handles spacing for you
Element UI is built to remove most of the guesswork around Elementor padding, margin and gap.
Inside the component library:
- Each component uses a consistent spacing scale
- Parent containers handle large vertical and horizontal spacing with gaps
- Inner layouts use padding and gaps instead of random margins
- Mobile spacing is already tuned.
When you paste a hero, services section or pricing layout into your site, spacing is already set in a sensible way. You can tweak values to match your style instead of fighting messy spacing from scratch.