Skip to main content

Command Palette

Search for a command to run...

Elementor v4 Variables: How to Create and Use Them

Updated
12 min readView as Markdown
Elementor v4 Variables: How to Create and Use Them
W
WPVibes builds WordPress plugins and resources for developers, creators, and agencies. Our plugin portfolio covers a wide range of use cases from Elementor addons and dynamic content tools to form management, WooCommerce utilities, email logging, Bricks Builder extensions, and content lifecycle tracking. On this profile, we share tutorials, plugin updates, WordPress dev tips, and practical guides - the kind of content that helps you build and manage better WordPress sites, faster. 🔗 Explore all our plugins → https://qikly.ink/wpv-products

When the same color, font, or spacing value is used across multiple pages, changing it manually can take a lot of time. You have to find every place where that value is used and update it individually.

Elementor v4 Variables make this easier. You can define a value once, use it across your site, and update it later from one place. Any element using that Variable updates automatically.

In this guide, you'll learn how Elementor v4 Variables work, how to create your first Variable, and how to use Variables on actual Elementor elements. We'll then build a simple set of color, typography, and spacing Variables that you can reuse throughout your site.

What You Need Before Setting Up Variables

Before following the steps in this guide, make sure you have:

  • Elementor Pro: Variables require Elementor Pro.

  • Elementor v4.0 or later: Variables are part of Elementor's v4 design system.

  • Basic Elementor familiarity: you should know how to open the Elementor editor and select an element.

Elementor v4 uses the Atomic Editor, which is where Variables are available. Existing non-atomic elements can still work alongside the newer v4 features, so you don't need to rebuild an existing site just to start using Variables.

💡
Notes: If your site also runs Contact Form 7, Elementor Forms, Gravity Forms, or Ninja Forms, enable all of them at once. All submissions appear in the same Form Vibes dashboard — no need to switch between plugins.

What Are Elementor v4 Variables?

A Variable is a named value defined once and referenced everywhere. Instead of typing #3B82F6 into 40 different color pickers across a site, create a Variable called color-primary-dark and set its value to #3B82F6. Every element that needs that color references the Variable instead of the hex code.

When the color needs to change, update the Variable value from #3B82F6 to #2563EB. Every element referencing that Variable updates automatically. No hunting, no missed elements, no manual find-and-replace.

Design system professionals call these design tokens. Elementor calls them Variables. Same concept, more approachable name.

Elementor v4 supports three types of Variables:

  • Colors: hex values used in any color picker (backgrounds, text, borders, shadows)

  • Typography: font families used in any font-family field

  • Sizes: numeric values with units, used for spacing, font sizes, borders

This gives you one place to manage commonly reused design values instead of setting them manually on individual elements.

Elementor Variable Manager to Create Variables

How to Set Up Your First Variables

Let's start by creating a single color Variable and using it on an Elementor element. This will help you understand how the complete Variables workflow works before you create a larger set for your site.

Step 1: Open the Variables Manager

  • Inside the Elementor editor:

  • In the top toolbar, click the Design System icon (the droplet-shaped icon on the right).

  • Clicking this icon opens the Variables Manager, a dedicated panel where every Variable used across your site lives in one place. From here you can create new Variables, rename or edit existing ones, and adjust their values.

Elementor Design Icon to Open Variable Manager

Step 2: Create Color Variables

Colors are the most-used Variable type. Start with a six-Variable core set that covers most brand needs:

  • color-primary-dark: main brand color, buttons, links, accents

  • color-primary-light: lighter variant for hover states, subtle backgrounds

  • color-secondary-dark: secondary brand color, complementary accents

  • color-secondary-light: lighter secondary variant

  • text-dark: primary text color (usually dark gray, not pure black)

  • text-light: text color on dark backgrounds (usually white or near-white)

To create each Variable:

  • Click the + (add) button inside the Variables Manager.

  • Select Color as the type, since we're creating color Variables in this case, and enter a clear, descriptive Variable name, for example color-primary-dark.

  • Set the exact hex value using the color picker, either by typing the hex code or dragging the picker to color, click Save. Repeat this same process for all six Variables.

Create Color Variable in Elementor

Step 3: Create Typography Variables

Typography Variables let a font family change site-wide from one place. Three Variables cover most needs:

font-heading font family for all headings (h1 through h6)
font-body font family for body text and paragraphs
text-base-size base body font size (usually 16px or 18px)
  • Create these using the same workflow you just followed for the color Variables. Click the + button inside the Variables Manager, but this time select Typography.

  • Enter a clear, descriptive name for each Variable. Set the corresponding value (a font family or weight), then click Save.

  • Repeat this for every Typography Variable you need.

Create Typography Variable in Elementor

Step 4: Create Size Variables

Size Variables are useful for values that you repeatedly use for spacing or text sizes. Four spacing Variables handle it:

space-section vertical padding between major sections (80-120px on desktop)
space-block space between content groups within a section (40-60px)
space-element space between individual elements (16-24px)
space-small tight spacing for icon gaps, tag margins (8-12px)
  • Start creating a Size Variables by selecting the Size as the type from the options shown.

  • Enter a clear, descriptive name for the Variable, for example spacing-section-lg or radius-card, following the same naming pattern as your other Variables so it stays easy to find later.

  • Set the value in pixels (or rem, depending on what you're defining), then click Save. Repeat this for each Size Variable you need.

Create Size Variable in Elementor

How to Use Variables on Elementor Atomic Elements

Creating Variables is only the first part. Now you need to connect them to the properties of your Elementor elements.

The general process is:

  1. Select an element in the Elementor editor.

  2. Open the property you want to style.

  3. Click the Variables icon next to the property field.

  4. Select the Variable you want to use.

The property will now reference the Variable instead of relying on a manually entered value.

Use a Color Variable on a Button

Suppose you want all your primary buttons to use color-primary-dark.

Select your button and open its background color setting.

Instead of entering a HEX value manually, select: color-primary-dark.

The button background is now connected to that Variable. You can use the same Variable for other primary buttons across your website.

Apply Variable Colors to Atomic Button Element in Elementor
💡
Notes: If your site also runs Contact Form 7, Elementor Forms, Gravity Forms, or Ninja Forms, enable all of them at once. All submissions appear in the same Form Vibes dashboard — no need to switch between plugins.

Building a Hero Section with Variables

Here's the demo scenario - a hero section built entirely using Variables:

Property Variable
Section background color-secondary-light
Main heading text text-dark
Button background color-primary-dark
Button text text-light
Button hover background color-primary-light

Every color decision on that hero section references a Variable instead of a hardcoded hex value. Nothing is inline. Nothing is one-off.

Creating Hero Section in Elementor and Use Variables

Repeat this pattern for every section on the page. Buttons use color-primary-dark. Headings use text-dark. Section backgrounds alternate between color-bg and color-secondary-light. Nothing is hardcoded.

What Happens When You Change a Variable?

This is where Variables become especially useful.

Open the Variables Manager. Change color-primary-dark from its current hex value to a different color and save.

Every element on the page that references color-primary-dark - the button, the heading accents, the icon colors, the link hover states - updates instantly. No page reloads. No hunting. No missed elements.

Now multiply this across a 20-page site. A brand color change that used to take hours now takes seconds.

That is why Variables matter.

Before Changing the Variable Value After Changing the Variable Value

The Variables used above cover the basics. Here's a fuller starter list for a real site, enough for most business websites without going overboard.

Colors

Variable Name Purpose
color-primary Main brand color - buttons, links, primary accents
color-primary-dark Darker variant - hover states, active states
color-primary-light Lighter variant - subtle backgrounds, highlights
color-secondary Secondary brand color - complementary accents
color-text Main text color - usually dark gray like #1F2937
color-text-light Secondary text - captions, metadata
color-bg Page background - usually white or near-white
color-bg-alt Alternate section background - slight tonal difference
color-border Borders and dividers - light gray
color-white Pure white - for text on dark backgrounds

Typography

Variable Name Purpose
font-heading Font family for headings
font-body Font family for body text
text-base-size Base body font size - 16 or 18px

Spacing

Variable Name Purpose
space-section Section vertical padding - 80-120px
space-block Content group spacing - 40-60px
space-element Individual element spacing - 16-24px
space-small Tight spacing - 8-12px

Common Mistakes to Avoid

Five mistakes worth knowing before they cost time:

  1. Naming Variables by appearance instead of purpose. A Variable called blue-primary becomes wrong the moment the brand changes to green. color-primary is always correct regardless of the actual color. Name by function, not appearance.

  2. Creating too many Variables upfront. It's tempting to plan a huge Variable library on day one. Resist. Start with 15-20 Variables, add more only when a real repeating pattern demands them. Fewer, well-named Variables beat 50 half-remembered ones.

  3. Mixing two naming styles. Some people name Variables by purpose, like color-primary. Others name them by value, like blue-600. Both work, but pick one style and stick with it. Mixing the two gets confusing fast.

  4. Forgetting Variables need Pro. The single most common frustration for Free users following v4 tutorials is discovering Variables aren't available in their version. If a project is Free-only, Global Classes work but Variables don't. Plan for this before onboarding a client on Free.

  5. Not using Variables inside Classes. Variables and Global Classes are designed to work together. A button Class should reference color-primary as its background value, not a hardcoded hex. This two-layer system is what makes the v4 design system powerful.

Frequently Asked Questions

Do Variables work in Elementor Free?

No. Variables require Elementor Pro. The free version supports Global Classes but not Variables. This is the most common frustration among Free users trying to follow v4 tutorials.

What happens to my old v3 Global Colors when I migrate to v4?

Your old v3 Global Colors and Fonts keep working as they are. v4 also lets you link your new Variables back to those old colors and fonts, so both can work side by side while you switch over.

How many Variables should I create for a typical site?

Enough to cover your colors, a font or two, and a few spacing sizes, without repeating yourself. The starter list earlier in this guide is a good template. Add more only when you need to.

What's the difference between Elementor Variables and v3 Global Colors?

Both allow you to reuse values, but Variables are part of Elementor v4's broader design system. They are designed to work alongside features such as Global Classes.

Can I rename a Variable after creating it?

Yes. Elementor updates references automatically when a Variable is renamed. There's no orphaning of elements that were using the old name.

Can I use Variables inside custom CSS?

Yes. Elementor outputs Variables as standard CSS custom properties (--e-color-primary-dark, for example). Custom CSS can reference them directly with var(--e-color-primary-dark).

Do Variables work with the free Atomic Editor?

The Atomic Editor is available in Free, but Variables are Pro-only. Free users can build atomic pages with Global Classes; they can't use Variables inside those Classes.

Wrapping Up

Elementor v4 Variables replace the old way of hunting through pages to update one color. Setup takes less time than you'd think, and it pays off more with every page you build.

The takeaways:

  • Start with a small set of color Variables: primary and secondary colors, each in a light and dark version, plus text colors for light and dark backgrounds

  • Add font and spacing Variables for a full starter se

  • Name Variables by what they do, not what they look like

  • The real value is that one change updates everything

  • Variables come first. Everything else builds on them

More from this blog