
Automated emails are one of the most powerful tools in your Shopify workflow stack. Whether you're sending order confirmations, customer alerts, vendor updates, or loyalty follow-ups, the right email at the right moment can save time and improve your customer experience.
But building automated emails that actually look good — and land well — takes more than just writing a message and hitting “send.”
In this guide, we’ll walk through best practices for sending HTML emails through automation tools like Arigato. We’ll cover formatting tips, testing advice, personalization logic, and how to avoid common mistakes that can make your emails look broken or unfinished.
Build emails that render correctly
Just because an email looks fine in a preview window doesn’t mean it’ll show up cleanly in your customer’s inbox. Email clients (like Gmail or Outlook) each handle formatting differently, and without the right structure, things like spacing, styling, and alignment can easily fall apart.
Here’s how to keep your formatting solid:
- Always use
<p>
tags for paragraphs and<br>
for line breaks — line spacing will collapse if you rely on newlines alone - If you’re using Arigato, wrap your message in the
inky_to_html
filter to turn shorthand markup into email-ready HTML - Add
inline_css
to ensure your styles are embedded in the email (most email clients ignore<style>
blocks) - Use the HTML Preview feature — not just the Twig preview — to see how your message will actually render in an inbox
This helps avoid emails with no spacing, broken layouts, or content running together in a single unreadable block. For more info on how to style your emails (including syntax) check out the Arigato Automation help docs
Personalize your emails — but safely
Personalizing an email is great. Getting it wrong is worse than not doing it at all.
A common mistake: using {{ customer.first_name }}
without a fallback. If that value is missing, your email might start with “Hi, ” — which feels sloppy or impersonal.
Instead, use a default Twig fallback:
Hi {{ customer.first_name | default: "there" }},
That way, if the customer has no first name on file, they’ll see “Hi there,” — not an awkward blank.
Other safe personalization tips:
- Don’t assume fields will always have data — check for tags, order notes, or custom properties before referencing them
- Test with customers who don’t have tags or complete profiles
- Keep your greetings generic if you’re not sure your data is reliable
The goal is to make your emails feel personal without introducing gaps, glitches, or incomplete sentences.
Test emails like a real customer
The best way to avoid broken emails? Test like you’re on the receiving end.
- Use the HTML Preview feature in Arigato to see the final rendered email with real data
- Don’t rely solely on Twig previews — they’re helpful for structure, but won’t reflect real rendering or layout
- Send test emails to yourself, ideally using real sample orders or customer data
- Check the result on both desktop and mobile — and in multiple clients (Gmail, Outlook, Apple Mail)
- Look for collapsed spacing, broken styling, or missing personalization values
What looks fine in the builder might look broken in your inbox — so always test the final output.
Choose the right email sending method
Arigato offers multiple ways to send email:
- Built-in email action: Easy to use, reliable, no setup required. Uses Arigato’s sender address
- Gmail OAuth: Lets you send from your Gmail address. Easier to set up than SMTP
- SMTP: Full control over sending email from your own domain (like
orders@yourstore.com
), but setup is more involved
Some notes:
- Only one SMTP or Gmail connection is allowed per store — choose carefully if you’re managing multiple brands
- Gmail tokens can expire if not used for a while, so monitor connections if you’re sending low-volume email
- SMTP is more flexible but requires your own email server settings and may involve more deliverability management
If you need full control over sender identity, use Gmail or SMTP. But for most internal or low-volume use cases, the built-in sender works well.
Keep your logic clean
Email content is only half the equation — the other half is when and how it gets triggered.
A few tips to keep email logic tight:
- Use filters to make sure your workflow only sends emails when the right conditions are met
- Add delays if your workflow depends on other events (e.g. wait 2 hours after fulfillment)
- Avoid duplicate sends by combining conditions and checking for existing tags, statuses, or email history
- If emailing vendors or customers, make sure order or product data is fully populated before triggering
You want your automation to feel smart, not rushed, so build with intentional logic and fallback protections.
Conclusion
Good email automation isn’t just about sending messages. The goal of emails is communication, so fundamentally, successful email automation sends clean, clear, well-timed messages that feel polished and intentional.
Whether you’re sending customer notifications, team alerts, or vendor instructions, these best practices help ensure your automated emails don’t just send — they succeed.
So add the right spacing, preview the HTML, use default filters, and test before you launch. It only takes a few extra minutes, and it’ll save you a world of broken inbox experiences down the line.
Want examples? Explore Arigato’s workflow template library to see how email fits into real-world automations — and how easy it is to make your next message the one that actually lands.