Finance firm · UK & Europe

Microsoft 365 email re-engagement with reply-aware follow-ups

We built tooling for a UK and European finance firm that finds contacts who went quiet and re-engages them from the owner's own mailbox, never double-emailing anyone. One campaign screened 12,298 contacts down to 252 approved people, and four campaigns have run in total. Every contact is approved by the owner before anything is sent.

By ExcenityAI · Published

Cover graphic for a UK and European finance firm: quiet contacts, re-engaged on the original thread. The flow runs from the Microsoft 365 mailbox to finding quiet contacts, owner approval and paced follow-ups.

The challenge

The CRM's email data was unreliable. The owner wanted to restart conversations with dormant contacts personally, in context, and safely.

How it works

  1. 01Read the mailboxMicrosoft Graph analyses the client's own mailbox history and builds a record for every address.
  2. 02Cross-check the CRMCompared with a Pipedrive export to find who has truly gone quiet past the cutoff.
  3. 03Clean the listAutomated senders, out-of-office replies and bulk mail are flagged and removed.
  4. 04Human approvalThe owner reviews and approves every contact in a spreadsheet before anything is sent.
  5. 05Match to the real threadEach person is matched to their Outlook thread; shared threads get one email, not several.
  6. 06Three-step paced sequenceEmail, follow-up and final follow-up, each skipped the moment anyone replies.

What we delivered

  • 12,298 contacts screened

    Narrowed to 252 owner-approved people for one campaign. Four campaigns have run in total.

  • Never emails twice

    The build fails if any address or thread would get two emails in a step.

  • Reply-guard

    Stops a sequence if the contact or a teammate has emailed since, ignoring out-of-office replies.

  • Paced like a person

    50 a day, 10 an hour, weekday office hours, with random timing and resumable state.

  • Dry-run by default

    Nothing sends until explicitly switched on, with a daily summary email to the owner.

  • Runs on the client's machine

    Packaged as a self-contained service with a start-here guide per campaign.

Stack

  • Microsoft Graph API
  • Microsoft 365 / Outlook
  • Node.js
  • Python
  • Pipedrive
  • Resend
  • macOS launchd

Related service: AI agents & automation

More case studies

  • Advisory firm · USABuilt, pre-launch

    AI voice agents on Vapi: inbound receptionist and outbound follow-up

    We built two AI voice agents on Vapi for a US advisory firm: an inbound receptionist and an outbound follow-up caller.

    VapiGPT-4.1Deepgram Nova-3n8n webhooks
  • In-house product

    Invoicing platform with a Claude MCP server

    We built our own invoicing and freelancer-finance platform with Next.js and Supabase, plus a secure remote MCP server so Claude can draft invoices, log expenses and attach receipts from plain English.

    Next.js 16React 19SupabasePostgres RLS

Have a job like this? Let's automate it.