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.