Editing Email Templates

Every email your store sends—order confirmations, shipping updates, marketing campaigns—uses a template. CartOS gives you full control over these templates through the Automation Bolt, so your emails match your brand and say exactly what you want.

Where email templates live

All email templates are managed in the Automation Bolt. Go to Automation › Email Templates to see your templates, or access them directly from the workflow that uses them.

Templates are organized by type:

  • Transactional – Order confirmation, shipping confirmation, refund notification, account emails
  • Marketing – Newsletters, promotions, campaigns
  • Automated – Abandoned cart, review requests, welcome series

The email editor

Click any template to open the email editor. The editor has two modes:

Visual editor

The visual editor lets you build emails by dragging and dropping content blocks. No HTML knowledge required. You see approximately what customers will see (though email rendering varies slightly across email clients).

Code editor

Switch to code view for direct HTML editing. This gives you complete control but requires knowledge of HTML and email-specific coding practices. Email HTML is more limited than web HTML—what works in a browser doesn't always work in Gmail or Outlook.

Email structure

Templates are built from content blocks you arrange in a single-column or multi-column layout:

Content blocks

  • Text – Paragraphs, headings, and formatted text
  • Image – Single image with optional link
  • Button – Call-to-action button
  • Divider – Horizontal line to separate sections
  • Spacer – Empty space for layout control
  • Social – Social media icons linking to your profiles
  • HTML – Custom HTML code block

Dynamic blocks

These blocks pull in data automatically:

  • Order summary – Line items, quantities, prices from the order
  • Shipping address – Customer's shipping details
  • Tracking info – Carrier and tracking number with link
  • Product recommendations – Related or popular products
  • Cart contents – Items in an abandoned cart

Subject line and preview text

Subject line

The subject line is the first thing customers see. Make it clear and relevant. You can use Liquid variables to personalize:

Order {{ order.name }} confirmed
Your {{ shop.name }} order is on its way!
{{ customer.first_name }}, your items have shipped

Keep subject lines under 50 characters so they don't get cut off on mobile.

Preview text

Preview text appears after the subject line in email clients. It's your chance to add context and encourage opens. If you don't set it, email clients pull the first text from your email body—which might be "View in browser" or something unhelpful.

Thank you for your purchase! Here's your receipt.
Track your package with the link below.
We miss you! Here's 10% off your next order.

Using Liquid in emails

Liquid variables let you insert dynamic content that changes for each recipient. The same syntax used in themes works in email templates.

Common variables

Order emails:

{{ order.name }} – Order number (#1001)
{{ order.email }} – Customer email
{{ order.total_price | money }} – Order total
{{ order.created_at | date: "%B %d, %Y" }} – Order date
{{ order.shipping_address.first_name }} – Customer first name
{{ order.shipping_address.city }} – Shipping city

Shipping emails:

{{ fulfillment.tracking_number }} – Tracking number
{{ fulfillment.tracking_url }} – Tracking link
{{ fulfillment.tracking_company }} – Carrier name
{{ fulfillment.estimated_delivery }} – Estimated delivery

Customer emails:

{{ customer.first_name }} – First name
{{ customer.email }} – Email address
{{ customer.orders_count }} – Total orders placed

Shop info:

{{ shop.name }} – Store name
{{ shop.email }} – Store email
{{ shop.url }} – Store URL

Conditional content

Show or hide content based on conditions:

{% if order.shipping_address.country != 'United States' %}
  International orders may take 2-3 weeks for delivery.
{% endif %}

{% if customer.orders_count > 1 %}
  Thanks for being a repeat customer!
{% endif %}

{% if order.total_price > 10000 %}
  Your order qualifies for free shipping!
{% endif %}

Looping through items

Display order line items:

{% for line_item in order.line_items %}
  {{ line_item.title }} × {{ line_item.quantity }}
  {{ line_item.price | money }}
{% endfor %}

Styling your emails

Brand colors

Set your brand colors in the template settings. These apply to buttons, links, and accents throughout the email. Consistent colors reinforce your brand identity.

Logo

Add your logo at the top of emails. Upload it in the template header section. Use a version optimized for email—not too large (600px wide max) and in PNG or JPG format.

Fonts

Email font support is limited. Stick to web-safe fonts for body text:

  • Arial / Helvetica
  • Georgia
  • Times New Roman
  • Verdana
  • Trebuchet MS

Some email clients support web fonts, but always specify fallbacks. The visual editor handles this automatically.

Mobile responsiveness

Over half of emails are opened on mobile. CartOS email templates are responsive by default—they automatically adjust for smaller screens. Preview your emails at different sizes to make sure they look good everywhere.

Default transactional templates

CartOS includes pre-built templates for standard transactional emails:

Order confirmation

Sent when an order is placed. Includes order summary, shipping address, payment method, and next steps. This is often the first email from your brand after purchase—make it welcoming.

Shipping confirmation

Sent when an order is fulfilled. Includes tracking information and expected delivery. Customers check these repeatedly, so make tracking info prominent.

Delivery confirmation

Sent when tracking shows delivery. Good opportunity to ask for reviews or offer help if something's wrong.

Refund confirmation

Sent when you issue a refund. Confirm the amount and timeline for funds to appear.

Account welcome

Sent when a customer creates an account. Welcome them and explain the benefits of having an account.

Password reset

Sent when a customer requests a password reset. Keep it simple—just the reset link and security reminder.

Creating custom templates

Beyond the defaults, create templates for any purpose:

Marketing campaigns

Build templates for newsletters, product announcements, and promotions. These tend to be more designed and branded than transactional emails.

Automated sequences

Create templates for automated workflows like abandoned cart emails, post-purchase follow-ups, win-back campaigns, or welcome series.

Seasonal templates

Design special templates for holidays, sales events, or seasonal campaigns. Duplicate an existing template and customize for the occasion.

To create a new template, go to Automation › Email Templates and click Create Template. Start from scratch or duplicate an existing template.

Testing emails

Always test before sending to real customers:

Send test email

In the email editor, click Send Test and enter your email address. The test uses sample data so you can see how variables render.

Preview with real data

Some templates let you preview with actual order or customer data. Select a real order to see exactly what that customer would receive.

Check multiple email clients

Emails render differently in Gmail, Outlook, Apple Mail, and mobile apps. Test in the clients your customers use most. Tools like Litmus or Email on Acid can help test across many clients at once.

Test links

Click every link in your test email. Broken links in transactional emails are frustrating for customers and make your brand look unprofessional.

Email deliverability

A beautiful email means nothing if it lands in spam. CartOS handles technical deliverability (SPF, DKIM, proper infrastructure), but content matters too:

Avoid spam triggers

  • Don't use ALL CAPS or excessive punctuation!!!
  • Avoid spam phrases like "Act now!" or "Limited time!"
  • Don't use too many images with little text
  • Include a plain-text version (CartOS generates this automatically)

Include required elements

  • Your physical mailing address (required by CAN-SPAM)
  • Unsubscribe link in marketing emails
  • Clear "From" name customers recognize

Maintain list hygiene

Remove bounced addresses and honor unsubscribes promptly. Sending to bad addresses hurts your sender reputation.

From name and address

Configure your sender identity in Automation › Settings:

From name

What appears as the sender. Use your store name or a recognizable variation. "Acme Store" or "Sarah from Acme" both work—just be consistent.

From email

The sending address. Use an address at your domain (orders@yourstore.com) rather than a generic Gmail. This looks more professional and improves deliverability.

Reply-to address

Where replies go. Can be different from the from address—useful if you send from a no-reply address but want replies going to support.

Template best practices

Keep it focused

Each email should have one primary purpose. Order confirmations confirm orders. Shipping emails provide tracking. Don't cram promotions into every transactional email—it dilutes the message and can feel spammy.

Write like a human

Your emails represent your brand voice. Write naturally, not like a robot. "Your order is confirmed" is fine, but "Thanks so much for your order!" feels warmer.

Make actions obvious

If you want customers to do something (track an order, leave a review, shop a sale), make the call-to-action button prominent and clear.

Respect the inbox

Every email you send should provide value. Don't email just to email. Customers will unsubscribe or mark you as spam if you overwhelm them.