Quick answer
Workflows and Campaigns are both marketing email. Transactional is its own category.
What counts as transactional
Transactional email is 1-to-1 and triggered by the user. Clear examples:- Password resets and magic links
- Email verification and OTP codes
- Receipts, invoices, and payment confirmations
- Shipping updates
- Account creation and deletion confirmations
- Security alerts (“new login from Chrome on macOS”)
- Scheduled report exports the user requested
When in doubt: if the user would reasonably be surprised to receive it, or if it contains any promotional content, send it as marketing. For individual cases you are unsure about, email help@loops.so.
Why the distinction matters
Sender reputation
Transactional email has high engagement by default because the recipient is actively waiting for it. That engagement boosts your sender reputation. Marketing email has lower engagement, and sending marketing content through a transactional path mixes the two signals and can hurt deliverability for the messages that matter. Loops sends transactional and marketing email from your verified sending domain and a small shared pool of Loops IPs by default, so the reputation signals are connected. This is usually helpful because high transactional engagement can support overall deliverability. It also means marketing content sent through a transactional path can weaken the same reputation profile that your operational messages depend on.Legal and compliance
Marketing email must include an unsubscribe link and honor opt-outs. Transactional email is exempt because it is operationally required. Loops enforces this automatically:- Campaigns and Workflow emails include an unsubscribe link in the Loops footer, or you add
{unsubscribe_link}when uploading custom emails. - Transactional emails do not include an unsubscribe link.
Unsubscribe vs suppression
These are two different states in Loops, and the distinction matters when deciding classification:
So “transactional bypasses unsubscribes” is true. “Transactional bypasses suppression” is not, see contact suppression.
Tracking
By default, Loops does not track opens or clicks on transactional email. This is deliberate, see the note in the transactional guide. Marketing email tracks both. This meansemail.opened and email.clicked webhook events do not fire for transactional sends.
How Loops keeps them separate
Full behavior reference: Transactional email overview.
Common mistakes
Sending a “welcome” email as transactional
The user technically took an action (signing up), but a welcome email is usually promotional or onboarding content. Send it as a workflow with a “Contact added” trigger so it respects unsubscribes and contributes to your marketing engagement signal. For examples of what to include, see Your first onboarding emails.Sending marketing content through the transactional API
Mixing product announcements or newsletters into transactional sends risks complaints and spam flags. Email service providers (ESPs) watch for this. The fix is to send marketing content as a Campaign or Workflow instead.Forgetting transactional still needs a verified sending domain
Transactional uses the same domain setup as marketing. If DNS is not right, nothing sends. See Setting up your domain.Using marketing-style “From” names on transactional
Transactional should come from a From name the user recognizes from the app (for example,Loops <noreply@mail.loops.so>). Overly branded or promotional From names on receipts and security alerts confuse users and hurt engagement. See sending settings.

