Loops

Loops

· #378 most-used

Product, marketing, and transactional email for SaaS — all in one place

MarketingEmailCommunicationAnalyticsAutomationEmail Marketing

Loops is an email platform built for SaaS companies that handles product, marketing, and transactional email in a single workspace. It replaces the fragmented setup of a marketing tool plus a transactional service with one platform whose data model — contacts, properties, events, and event properties — maps directly to how software products track users. Connect Loops to Actionist and your agents can create and update contacts from any source, fire lifecycle events from outside your codebase, send transactional emails on demand, and respond to unsubscribes and contact changes across every connected system automatically.

Average time saved
7 hours
per person · per month
≈ 1 workdays back

Eliminates manual work. Agents eliminate the manual cycle of exporting CRM contacts into Loops, triggering lifecycle events by hand, and drafting individual transactional emails for billing and support events.

Schedule

What your Loops agent runs on autopilot

A week of scheduled jobs your Actionist agent will execute on your behalf.

28Scheduled jobs
7Agents at work
24/7Always on
Agents
TueThu
Tue
Wed
Thu
7a
8a
9a
10a
11a
12p
1p
2p
3p
4p
5p
6p
Multi-app workflows

Loops × every other app you use

End-to-end automations that span multiple apps — each one a real business outcome.

6Workflows
6Apps spanned
~28 hrsSaved / week
6Personas served
For marketing
Featured3 apps

Qualified lead fires Loops nurture sequence from HubSpot

When a contact is marked as a qualified lead in HubSpot, the agent creates or updates their Loops contact with the latest CRM properties, fires the leadQualified event to trigger the nurture sequence, and posts a confirmation to Slack — all within about a minute of the CRM update. No manual Loops logins or CSV exports are needed.

~10 hrs

Time saved for your team — every week, on autopilot

The flow
Trigger·When a contact is marked as a qualified lead in HubSpot
Result
Update Contact with plan interest and company sizeSend Event — leadQualified to trigger nurture sequencePost lead name and nurture sequence confirmation to #marketing
The win
Saved per run
20 min
Runs / week
~30×
Every qualified lead enters the nurture sequence within about a minute of CRM update
Driven byMarketing Agent
ROI

Savings

What your team gets back — two angles: what you stop doing manually, and what that's worth.

Without Actionist

What you do manually today

With Actionist

What your agent runs for you

  • Sales
    45 min / week
    Manual CRM-to-Loops contact export

    Sales ops exports a CSV of qualified leads from the CRM, reformats it for Loops import, manually triggers the nurture sequence, and repeats the process weekly.

    Sales Agent
    0 min
    Agent syncs CRM contacts into Loops and fires nurture events automatically

    When a lead is qualified in the CRM, the agent creates the Loops contact, updates properties, and fires the nurture event — the sequence starts within about a minute of the CRM update.

  • Marketing
    60 min / week
    Engineering-dependent event integration

    Marketing requests a backend code change to send a new event to Loops, waits for engineering capacity, tests in staging, and deploys — a cycle that can take weeks per event type.

    Marketing Agent
    0 min
    Agent triggers Loops lifecycle events from any source without code

    Events from forms, webinars, or product milestones are sent to Loops by the agent the moment they occur — no engineering sprint needed to wire a new event source.

  • Customer Support
    30 min / week
    Manual or generic transactional email sending

    Support reps either write individual follow-up emails after resolving tickets or rely on an unbranded helpdesk notification that doesn't match the product's email style.

    Customer Support Agent
    0 min
    Agent sends branded transactional emails via Loops for every ticket event

    When tickets are resolved or escalated, the agent sends a Loops transactional email immediately — consistent branding, deliverability optimised, logged alongside all other Loops sends.

  • Human Resources
    20 min / week
    Manual new-hire email setup in Loops

    HR manually creates each new hire's Loops contact, sets properties by hand, adds them to the right mailing list, and remembers to trigger the onboarding sequence — missing a step means broken workflows.

    Human Resources Agent
    0 min
    Agent adds new hires to Loops and triggers onboarding sequences on start date

    When a new hire is added to the HRIS or onboarding sheet, the agent creates their Loops contact, subscribes them to the internal comms list, and fires the onboarding event — sequences run before day one.

  • Finance
    40 min / week
    Manual billing email and renewal chase

    Finance uses Stripe's default receipt emails (unbranded) and sends renewal reminders by hand — no lifecycle sequence, inconsistent branding, and reminders depend on someone remembering to send them.

    Finance Agent
    0 min
    Agent sends Loops payment confirmations and renewal reminders automatically

    When Stripe registers a payment or an upcoming renewal, the agent sends the branded Loops transactional email and fires the renewal event — customers are informed without finance drafting individual emails.

  • Operations
    50 min / week
    Manual Loops list and contact maintenance

    Operations periodically logs into Loops to spot-check list sizes, manually removes duplicates, and updates contact fields — a reactive process that lets inconsistencies accumulate between reviews.

    Operations Agent
    0 min
    Agent reconciles Loops lists and contact data across all systems weekly

    Each week the agent audits mailing lists, deduplicates contacts, checks schema gaps, and syncs property changes — all without anyone logging into the Loops dashboard.

  • Legal
    25 min / week
    Manual GDPR deletion and unsubscribe handling

    Legal emails the operations team with deletion requests; someone logs into Loops, manually finds and deletes the contact, and replies with a confirmation — a multi-step, error-prone chain.

    Legal Agent
    0 min
    Agent processes deletion requests and consent changes in Loops automatically

    When a DSAR deletion request or consent withdrawal is logged, the agent removes the contact from Loops and files a timestamped compliance record — the obligation is met within about a minute.

+ 100s of other Loops automations
Average time saved
27 hrs / person / month
Calculator

Calculate what your team saves

Team size
5 people
Hourly rate
$75 / hr
Hours saved / week
9
Hours saved / year
450
Annual ROI
$33,750

Based on Loops's typical team usage — the visible tasks plus a few other automations the agent runs: ~1.8 hrs / person / week of admin work automated.

Connect

How to plug Loops into Actionist

Pick the connection method that suits your environment.

Loops authenticates all API requests with an API key passed as a Bearer token. Generate the key in your Loops Settings under API — it takes under a minute and requires no OAuth flow.

1
Generate an API key in Loops

Log in to your Loops account and go to Settings → API. Click Create API key, give it a descriptive name (e.g. 'Actionist'), and copy the generated key.

2
Paste into Actionist

Paste the key into the API key field in Actionist and click Test connection. Actionist runs a read call to confirm the handshake.

3
Test the connection

Once the test passes, your Loops agent is ready. All API calls will be authenticated as Bearer token requests.

Credentials you'll need
API key*
Loops dashboard → Settings → API → Create API key
Actions

12 actions your agent can call

Read and write operations available to your Actionist agent.

Triggers

8 events your agent can react to

Events your agent watches for, and the actions it kicks off in response.

FAQs

Questions about Loops + Actionist

How do I connect Actionist to my Loops account?
Go to the Apps tab, find Loops, and click Connect. The recommended path is an API key. In your Loops account, go to Settings → API → Create API key, give it a descriptive name, and paste it into Actionist. Actionist will run a test call to confirm the handshake before any agents can use it.
Does Loops use OAuth or an API key to connect?
Loops uses an API key for authentication. You generate the key from your Loops dashboard under Settings → API. The key authenticates all requests from Actionist including creating or updating contacts, sending events, and triggering transactional emails. There are no OAuth scopes to configure — the key grants full API access, so treat it like a password and rotate it if the connection is ever compromised.
Can agents trigger Loops email workflows from outside my product?
Yes. Actionist agents can call the Send Event action with any event name you have defined in Loops (for example 'trialStarted', 'planUpgraded', or 'featureUsed'). The event fires your Loops workflow just as if the call came from your product backend. This means your agents can trigger onboarding sequences, upgrade nudge emails, or churn-prevention campaigns based on data changes they detect in your CRM, database, or spreadsheet — without any code changes to your product.
What is the difference between transactional emails and lifecycle workflows in Loops?
Loops separates transactional emails (one-to-one, triggered by your code or Actionist) from marketing and lifecycle emails (multi-step workflows). Transactional emails are sent immediately via the Send Transactional Email action — ideal for password resets, receipts, or alerts. Lifecycle workflows are triggered by events; you define the timing, branching, and delay logic inside Loops. Both types live in one platform, so your team can see and audit every email a contact receives.
What are the most common ways agents use Loops?
The most common patterns are: (1) syncing your CRM or product database to Loops contacts using Add Contact and Update Contact so your email list always matches your source of truth; (2) firing events from non-product sources — for instance, when a deal closes in your CRM, the agent sends a 'dealClosed' event that triggers a Loops onboarding sequence; (3) sending transactional emails from automation recipes — alerts, confirmations, or summaries that originate in Actionist rather than your product backend.
How do I avoid adding duplicate contacts to Loops?
Use Find Contact first to check whether a contact already exists in Loops before calling Add Contact. If the contact exists, call Update Contact instead to merge the new data without creating a duplicate. Alternatively, use Find or Create Contact to do this in a single step — Actionist will return the existing contact if one is found, or create a new one automatically. Keeping your Loops list clean prevents double-counting in analytics and avoids duplicate emails in lifecycle workflows.
Can I trigger actions in other apps when someone unsubscribes in Loops?
Yes. The Contact Unsubscribed webhook fires within about a minute of a contact opting out of any Loops email. You can use this trigger to update records downstream — for example, marking the contact as unsubscribed in your CRM, removing them from active cadences in another tool, or notifying the account owner. This keeps your external systems in sync with Loops consent data without any manual reconciliation.
Why would a SaaS team choose Loops over a general email marketing tool?
Loops is specifically designed for SaaS companies. Its data model of contacts, properties, events, and event properties maps directly to how SaaS products track users. It handles both marketing (campaigns, lifecycle sequences) and transactional (password resets, alerts) email in one place, which means fewer integrations to maintain and a unified view of every email a contact has received. Alternatives like Mailchimp or Klaviyo are built around e-commerce and newsletters, which means SaaS-specific event-driven workflows feel like workarounds rather than first-class features.