All articles

tutorials

How to add gradient text to Shopify (the no-code way that actually works)

Three ways to add gradient text to your Shopify store — copy-paste CSS, theme code edits, or the one-minute no-code path. With working examples for every Shopify 2.0 theme.

The Pulsar team5 min read
A Shopify product page headline rendered with a purple-to-pink gradient.

Gradient text on a Shopify headline is one of the highest-ROI design changes you can make: a 30-second edit that lifts above-the-fold polish from generic-Dawn-theme to looks-like-a-real-brand. The problem is that most tutorials online give you CSS that quietly breaks in Safari, in older themes, or when your H1 is generated by a section block. This guide gives you three approaches — ranked by speed, ranked by control — and tells you the exact failure mode of each.

TL;DR

  • Fastest: install Pulsar, wrap a word in @{red-blue}word@. Two clicks, no theme code, works on every 2.0 theme.
  • Free + manual: edit your theme base.css and add a .gradient-text utility class. Works, but requires touching code and re-applying after every theme update.
  • One-off: paste a <span style="..."> directly inside a Rich Text section. Easiest for a single headline; messy if you have more than one.

The three approaches, side by side

ApproachTime to shipSurvives theme updatesEditable from theme editorCost
Pulsar app~60 secondsYesYesFree for colors & gradients
Theme CSS edit10–15 minutesOften notNoFree
Inline <span style>~30 secondsYesYes, uglyFree

Approach 1 — The no-code path (Pulsar)

Pulsar adds a tiny syntax to your theme — any text wrapped in @{...}text@ gets styled at render time. There's no theme code to change, the merchant can edit it from any section that supports text, and it works identically across Dawn, Sense, Refresh, and every other Shopify 2.0 theme.

  1. Install Pulsar from the Shopify App Store (free plan covers colors and gradients).
  2. Open your theme editor and enable the Pulsar Inline app embed (one toggle).
  3. Edit any headline. Wrap a word in @{red-blue}awesome@. Save.
  4. Reload your storefront. The word renders as a gradient.
Pulsar syntax — you type
Welcome to my @{purple-pink}awesome@ store
Shoppers see
Welcome to my awesome store

The whole syntax for a two-stop gradient is @{color1-color2}text@. You can use named colors (red-blue), hex codes (@{#a855f7-#ec4899}), or for full control, the @g{...} tag accepts any valid CSS gradient — including conic, radial, or three-stop linears.

Screenshot of the Pulsar Effect Library in the Shopify admin showing the gradient builder with color pickers.
The Pulsar Effect Library — build the gradient visually, copy the tag, paste into any headline.

Approach 2 — Editing your theme CSS directly

If you'd rather not install an app, you can add a reusable utility class to your theme's stylesheet. The catch: this approach modifies your theme files, which means a theme update can overwrite the change, and the merchant can't apply it from the theme editor — only from code.

Step 1 — Open your theme code editor

  1. In Shopify Admin, go to Online Store → Themes.
  2. Click the ... menu next to your live theme and choose Edit code.
  3. Open your main stylesheet — usually assets/base.css in Dawn or assets/theme.css in older themes.

Step 2 — Add the gradient utility

assets/base.css
.gradient-text {
  background-image: linear-gradient(110deg, #a855f7 0%, #ec4899 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
  /* Safari/Chrome fall back gracefully when background-clip isn't supported */
  display: inline-block;
}

Step 3 — Wrap the headline word

Find the section template that renders your H1. In Dawn, that's typically sections/main-product.liquid for product pages, or sections/image-banner.liquid for the homepage. Wrap the word you want styled:

<h1>Welcome to my <span class="gradient-text">awesome</span> store</h1>

This works — but the merchant now has to edit Liquid every time they want to change a word, which defeats the point of using Shopify in the first place. Which is why most teams that try this approach end up on Approach 1 anyway.

Approach 3 — Inline <span style> in Rich Text

If you just need to gradient-style a single headline and you'll never touch it again, you can paste raw HTML into a Rich Text section's <> view. It's ugly, but it works without installing anything or editing theme code.

<h2>Welcome to my <span style="background:linear-gradient(110deg,#a855f7,#ec4899);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-fill-color:transparent">awesome</span> store</h2>

Picking colors that don't look like a 2014 startup

The single biggest mistake we see is picking gradient stops at random and ending up with the same purple-to-pink everyone shipped in 2014. A few rules that have aged better:

  • Stay in the same hue family. Indigo to violet (#4f46e5 → #a855f7) feels intentional. Red to green feels broken.
  • Use a 90–110° angle, not 90°. Pure horizontal gradients on text look like a button gradient. A slight diagonal reads as typography.
  • Borrow from your brand palette. If your buttons are emerald, your gradient should land in the emerald-to-teal range. Visual consistency outperforms novelty.
  • Avoid pure white as a stop on a white page. The end of the word will literally disappear.

Common bugs and how to fix them

+The gradient shows up in the admin preview but renders as solid black on the live store
Almost always a missing -webkit-text-fill-color: transparent;. Some themes (especially older custom builds) ship a global color: inherit rule that wins the specificity battle. Pulsar sidesteps this by injecting its CSS at the inline level.
+It works on desktop but not on iOS Safari
Same root cause. Safari requires the vendor-prefixed properties (-webkit-background-clip, -webkit-text-fill-color). If you're using a theme CSS approach, make sure both unprefixed and prefixed versions are present.
+My theme's H1 inherits a color that overrides the gradient
Increase the specificity of your gradient class, e.g. h1 .gradient-text instead of just .gradient-text. Or, easier, use Pulsar — the runtime wraps the word in a styled span that wins the cascade.
+Will gradient text hurt my SEO?
No. The text is still rendered as actual text, not an image — Googlebot reads <h1>Welcome to my awesome store</h1> exactly the same whether the word awesome is styled or not. Accessibility tools (VoiceOver, screen readers) also read it normally.
+Will gradient text hurt accessibility?
Only if your gradient stops have poor contrast against the background. Both stops should pass WCAG AA contrast — that's a ratio of 4.5:1 for body text, 3:1 for large headlines. Run the lighter stop through a contrast checker.

Which approach should you pick?

If you're a merchant who wants this to take 60 seconds and survive your next theme update — use Pulsar. The free plan covers gradients and solid colors forever. If you're a developer shipping a one-time custom theme for a client who never edits content — Approach 2 is fine. If you need to style exactly one headline and you don't trust your theme — Approach 3, knowing you may have to redo it.

About the author

The Pulsar team

Shopify text styling

Pulsar is the easiest way to stylize headlines in your Shopify store — colors, gradients, animated highlights and circles, no theme code required.

Install Pulsar — Free