How to Personalize Shopify Pre-Checkout Pages with Customer Variables
A checkout link lands in your customer's inbox. They click it and see a pre-checkout page that says "Hey Sarah, here's your exclusive bundle." Not "Hey valued customer." Not a generic landing page. Their actual name.
That one detail — using the customer's real name instead of placeholder text — changes how the page feels. It goes from mass marketing to personal outreach. And it takes about three seconds to set up.
What Customer Variables Are
Customer variables are placeholders you insert into any text block on your pre-checkout page. When a customer visits the page, the placeholder gets replaced with their actual information.
The available variables:
| Variable | What It Shows |
|---|---|
{{ name }} |
Full name |
{{ first_name }} |
First name only |
{{ last_name }} |
Last name only |
{{ email }} |
Email address |
{{ phone }} |
Phone number |
{{ city }} |
City |
{{ country }} |
Country |
So if your text block says "Hey {{ first_name }}, we picked these out for you" and Sarah Chen visits the page, she sees "Hey Sarah, we picked these out for you."
Where the Data Comes From
The customer data comes from the link itself. When you create a checkout link and send it to a specific customer — through Klaviyo, through your POS, through a manual email — the customer's Shopify profile provides the variable data.
This means personalization works best with links sent to known customers. If someone gets your link through a public post or a generic QR code, the variables won't have data to pull from. The text will either show a fallback or skip the variable entirely.
The sweet spot: email flows, SMS campaigns, clienteling links from POS, and VIP outreach. Any situation where you know who the customer is before they click.
When Personalization Actually Moves the Needle
Not every pre-checkout page needs personalization. A flash sale page with a countdown timer doesn't care who's looking at it. But certain scenarios get measurably better results when the page speaks directly to the customer.
VIP and Loyalty Offers
"{{ first_name }}, you've earned early access to our summer collection."
VIP customers expect to feel special. A personalized pre-checkout page reinforces that this link was created specifically for them — not blasted to your entire list. It's the difference between a loyalty reward and a marketing email.
Win-Back Campaigns
"We miss you, {{ first_name }}. Here's 20% off to come back."
Win-back emails live or die on whether they feel personal. A generic "Come back!" email with a generic landing page doesn't cut it. When the pre-checkout page uses their name and shows products relevant to their history, the win-back feels like outreach from a human, not a drip sequence.
Influencer Gifting
"{{ first_name }}, your gift is ready — pick your items below."
When you send an influencer a gifting page, it should feel curated. Using their name in the headline and subtext makes the page feel like a personal invitation rather than a form.
B2B and Wholesale
"{{ name }}, here's your reorder link for May."
Wholesale customers reorder regularly. A personalized pre-checkout page with their name and their usual products turns a transactional reorder into a familiar experience. It's one detail, but it signals that you know who they are and what they need.
POS Follow-Ups
"{{ first_name }}, here's everything you tried on today."
When a retail associate sends a checkout link after a customer leaves the store, the personalized page bridges the gap between the in-store experience and the online purchase. It feels like the associate personally put together their cart — because they did.
How to Add Variables to Your Pre-Checkout Page
In the Checkout Links editor, open your link's pre-checkout page and add or edit a text block.
In the text editor toolbar, you'll see a variable button. Click it and select which variable you want to insert. The variable appears as a highlighted tag in the editor — {{ first_name }} in a blue pill — so you can see exactly where dynamic content will appear.
You can use variables in:
- Headlines
- Body text
- Subheadings
- Any rich text block
Put them wherever they make the page feel more personal. A greeting at the top is the most common, but variables in body copy ("Free shipping to {{ city }} on this order") or section headers ("{{ first_name }}'s Summer Bundle") work too.
Tips for Using Variables Well
Use first_name over name for greetings. "Hey Sarah" feels natural. "Hey Sarah Chen" feels like a database query.
Don't overdo it. One or two personalized touchpoints per page is enough. If every paragraph has their name, it starts feeling creepy instead of personal.
Keep the page useful without variables. If the link gets forwarded or opened by someone else, the page should still make sense. Don't make the entire value proposition dependent on personalization — it's the cherry on top, not the sundae.
Pair with the right discount structure. A personalized page with a generic 10% off code is fine. A personalized page with a unique single-use code that matches their history is better. The personalization signals intent — make sure the offer backs it up.
Test with a real customer profile. Before you blast your link to a segment, send it to a test customer (or yourself) with full profile data. Make sure the variables render correctly and the page reads naturally with real data filled in.
The Bigger Picture
Customer variables are one piece of a larger shift: checkout links that feel like 1-to-1 communication instead of mass marketing. Combined with per-link discounts, order tagging for attribution, and pre-checkout page templates, you can build a buying experience that's personalized at every step.
The customer gets a link that uses their name, shows products picked for them, offers a discount tailored to their segment, and tags the resulting order so you know exactly which campaign drove it. All from one link, no code, no external tools.
That's what pre-checkout pages are for. Not just a step before checkout — a moment to make the customer feel like this purchase was made for them.