Gmail logo

How to Send Emails from Shopify Flow Using Gmail or Google Workspace

Shopify Flow can automate a lot, but it can’t send a custom email on its own: no order confirmations in your own words, no internal alerts, no win-back messages outside Shopify’s default notifications. FlowRelay fixes that with a Send transactional email action that routes each message through an email provider you choose.

If you run on Gmail, whether a personal @gmail.com account or a Google Workspace mailbox on your own domain, you can send through it over SMTP. FlowRelay’s SMTP option connects to Gmail with a host, port, username, and password. The one thing everyone gets wrong here: you can’t use your normal Google password. Google stopped accepting that for SMTP (the old “less secure apps” setting is gone for good). What still works, and is fully supported, is an app password: a separate 16-character code you generate after turning on 2-Step Verification. This guide covers generating one and connecting it, for both account types.

Personal Gmail and Workspace work the same way mechanically; the main differences are sending limits (Workspace allows more) and that a Workspace admin can disable app passwords for the whole organization. Both are called out where they matter below. Google nudges toward OAuth (“Sign in with Google”) as the long-term method, but app-password SMTP is supported and the right fit for FlowRelay’s SMTP connection.

What You'll Need

Step 1Pick the Account You'll Send From

Decide which Gmail account FlowRelay will authenticate as. For a Workspace domain, a dedicated mailbox (something like [email protected]) is the tidy choice: it keeps automated mail out of a person’s inbox and lets you manage its app password independently. For personal use, your @gmail.com address is fine for low volume.

Note the full email address now, you’ll use it as the SMTP username, and Gmail will send mail as this address by default.

Workspace note: the app-password approach below only works if your admin allows app passwords for the organization. If you’re not the admin and the app-password page turns out to be unavailable, that’s the likely reason, and you’ll need them to enable it (or fall back to OAuth or a Workspace SMTP relay, both more involved).

Step 2Turn On 2-Step Verification

App passwords only exist once 2-Step Verification (2SV) is enabled on the account, so this comes first.

Sign in to the account, go to myaccount.google.com/security, find 2-Step Verification, and switch it on, following the prompts to add a phone or authenticator. Without 2SV there’s no app-password option, and since the raw account password no longer works for SMTP, there’d be no way to connect at all.

Step 3Generate an App Password

With 2SV on, go to myaccount.google.com/apppasswords (or search “App passwords” in your Google Account settings). Type a name you’ll recognize, like “FlowRelay SMTP,” and click Create.

Google shows you a 16-character password, usually displayed in four groups of four. Copy it now; it’s shown only once. When you enter it later you can include or drop the spaces, Google ignores them. This code is what you’ll use as the SMTP password, in place of your normal account password.

Step 4Know Your Gmail SMTP Settings

Gmail’s SMTP settings are the same for personal and Workspace accounts:

  • Host: smtp.gmail.com
  • Port: 587 (TLS/STARTTLS) or 465 (SSL), either works
  • Username: your full email address ([email protected] or [email protected])
  • Password: the 16-character app password from the previous step, not your account password

That’s the whole setup. (Workspace admins managing many devices sometimes use smtp-relay.gmail.com instead, but it relies on IP allowlisting and admin-side configuration that doesn’t fit a hosted app like FlowRelay well, so stick with smtp.gmail.com and an app password here.)

Step 5Install FlowRelay on Your Shopify Store

Install FlowRelay from the Shopify App Store and accept the requested permissions.

On first launch, FlowRelay shows a short setup checklist: set your sender name and email, connect a provider, and send a test email. The next step covers connecting Gmail over SMTP.

Step 6Connect Gmail to FlowRelay

In FlowRelay, open Settings, find Email delivery, and click Manage providers to open the Connect email provider dialog.

Pick SMTP from the provider list and fill in: host smtp.gmail.com, port 587 (or 465), your full Gmail/Workspace address as the username, and the app password. FlowRelay tests the connection before saving it, so a typo in the app password, or 2SV not actually being on, shows up immediately rather than after your first real send.

Gmail sends mail as the address you authenticated with. If you set a different From address under Override sender, Gmail will rewrite it back to your account address unless that address is configured as a verified “Send mail as” alias in Gmail first (see the common issues below).

Click Connect. Whichever provider you connect first becomes your Primary, and FlowRelay routes all outbound mail through it. You can connect a second provider later as an automatic Fallback, which is worth doing here since Gmail’s daily sending limit is easy to reach at store volume.

Step 7Create Your First Flow Trigger

Open Shopify Flow, create a new workflow, and pick a trigger (Order created is a common one to start with). Add the Send transactional email action; it shows up in the action list once FlowRelay is installed.

You’ll need to fill in a few fields on the action: an email address for the recipient (this can pull straight from the trigger, like the customer’s email), a subject line, and the body, which is the actual HTML content of the email. There’s also an optional preview text field for the snippet shown in inbox previews. For the body, you can write plain HTML or use Liquid to pull in order details, customer names, and other data from the workflow.

Save the workflow and turn it on.

Step 8Test Your Setup

Before you trust a live trigger, use the Send test email button in FlowRelay’s settings. It confirms your Gmail connection is wired up correctly and shows you where the message lands.

Once that test email arrives, run your Flow workflow under real conditions, like placing a test order, and check FlowRelay’s delivery log to confirm the email went out and see its delivery status.

Common Issues

“Username and Password not accepted” / authentication failed

  • Make sure you’re using the 16-character app password, not your normal Google account password. The account password no longer works for SMTP and is the most common cause of this
  • Confirm 2-Step Verification is actually turned on for this account. App passwords don’t exist (and won’t authenticate) without it
  • Use the full email address as the username, including the domain
  • Workspace: if you can’t find the app-password page at all, your admin has likely disabled app passwords for the organization. They’ll need to allow them, or you’ll have to use OAuth or a Workspace SMTP relay instead

The App Passwords option is missing or won’t let you create one

  • App passwords only appear after 2-Step Verification is enabled. Turn on 2SV first, then revisit myaccount.google.com/apppasswords
  • On a Workspace account, the admin controls whether app passwords are available org-wide. If 2SV is on but the page still isn’t there, ask your admin to enable app passwords

Emails arrive, but the From address isn’t the one you set

  • Gmail forces the From address to the authenticated account unless you’ve set up the other address as a verified sender. In Gmail, go to Settings → Accounts → Send mail as, add and verify the address, then use it in FlowRelay’s sender details
  • If you don’t need a custom From address, simplest is to leave FlowRelay sending as the Gmail account itself and skip Override sender

Sends stop with a daily-limit or “you have reached a limit” error

  • Gmail caps daily sending: roughly 500 recipients per day for personal Gmail and about 2,000 per day for paid Google Workspace. Each recipient in To, CC, and BCC counts separately, and the limit runs on a rolling 24-hour window rather than resetting at midnight
  • Workspace trials are capped at 500/day until you convert to a paid plan and clear Google’s initial waiting period, so a new Workspace account behaves like a personal one at first
  • If you’re regularly near the limit, move higher-volume mail to a dedicated transactional provider and keep Gmail for lighter sending
  • Connect a second provider in FlowRelay as a Fallback, so sends keep going out automatically if Gmail hits its limit

“Connection refused” or “Connection timed out”

  • Try the alternate port. Gmail accepts both 587 (TLS/STARTTLS) and 465 (SSL), and if one is blocked the other often gets through
  • Confirm the host is exactly smtp.gmail.com. Note that imap.gmail.com and smtp-relay.gmail.com are different endpoints and won’t work for a standard app-password send
  • If you’re testing from a network that blocks outbound mail ports, that can cause this independently of your Gmail settings