Personal Gmail send-as gotchas

Personal Gmail (@gmail.com) can send as [email protected] via Settings → Accounts → Send mail as, but several constraints surprise founders.

What works

  • Gmail Settings API (and Composio tools such as list / get / patch send-as) can read and update existing send-as entries for a connected personal account.

  • SMTP "Send mail as" using an ESP that issues per-user SMTP credentials (our default: ZeptoMail Mail Agent keys).

  • Cloudflare Email Routing (or other MX) for inbound catch-all / address → forward to Gmail.

What usually fails or is incomplete

Expectation Reality

Cloudflare Email Routing = full mailbox

Routing is inbound forward only. No free outbound SMTP, no IMAP mailbox, no Calendar.

Pulumi / Cloudflare API creates Gmail send-as

DNS and Routing are automatable. Gmail send-as is a Gmail user setting. Personal accounts are not Google Workspace — there is no Admin SDK to provision aliases for @gmail.com users the way Workspace does for @company.com.

One click "verify" forever

Gmail emails a confirmation link to the custom address. That only works if Routing (or MX) delivers to an inbox you can open. Re-verify after password/SMTP changes.

Treat as alias fixes DMARC

"Treat as an alias" affects threading / reply behavior in Gmail. It does not replace SPF/DKIM alignment.

Resend SMTP for human send-as

Use Resend for product transactional mail. Prefer ZeptoMail (or similar) for human send-as; keep lanes separate.

Shared SMTP password for the team

Breaks auditability; hits rate limits as one identity. Issue per-user SMTP keys.

IP allowlisting on the ESP

Gmail clients egress from dynamic Google IPs — allowlisting breaks send-as.

  1. Put the domain on Cloudflare DNS.

  2. Enable Email Routing; create destination (your Gmail) and addresses (support@, hello@, …).

  3. Create a ZeptoMail Mail Agent; verify domain (SPF/DKIM via org infra Pulumi where possible).

  4. Generate a SMTP key for the person who uses [email protected] (or whatever personal mailbox).

  5. In Gmail → Send mail as: add the address, enter Zepto SMTP host/port/user/pass, complete the verification email.

  6. Optionally patch display name / signature via API after the alias exists.