All work
Sales automationShipped · client sales team

Personalized Outreach Engine With Branded Mockups + CRM Routing

Cold outreach where every prospect gets a mockup made for them — built end-to-end for a client's sales team, routed into CRM follow-up.

How it runs
DeterministicAgentHuman gate
01Deterministic

Enrich the prospect

02Agent

Generate the asset

03Agent

Draft the message

04Deterministic

Queue for review

Approve to send
05Agent

Classify and route replies

01

Context & problem

Cold outreach gets ignored because it looks like cold outreach. A generic template competes with hundreds of identical messages in the same inbox on the same morning, and the prospect has learned to delete all of them in one sweep.

The usual fix is manual personalization, which works right up until it caps your volume at whatever a rep can research and write before lunch. You are forced to choose between relevance and reach. The sales team at a Berlin AdTech company needed a system that did not make them pick.

So this was built for their outbound motion — a system shaped around how that team actually sells, not a mass tool. It is the same pattern I run on my own outbound, and the one I would deploy for an agency or a DTC brand that wants outreach that feels one-to-one at a volume no rep could hit by hand.

02

How it works

The diagram above shows the flow; here is what each step does. Deterministic stays deterministic, and an agent only shows up where judgement, language, or synthesis is actually needed.

  1. 01

    Enrich the prospect

    Deterministic

    For each prospect the system pulls company data and brand assets — logo, primary colour, hero image — from defined sources. Structured collection, no guessing.

  2. 02

    Generate the asset

    Agent

    It builds a personalized visual mockup or a short video preview using those assets, so the prospect sees their own brand in the message. Generative work that used to need a designer per prospect.

  3. 03

    Draft the message

    Agent

    The outreach copy is drafted per prospect, tuned to their product and the angle the mockup implies. Language work, done against a fixed template so it stays on-brand.

  4. 04

    Queue for review

    Deterministic

    Every message and asset lands in a review queue rather than sending itself. A human approves before anything leaves.

  5. 05

    Classify and route replies

    Agent

    Replies are classified by intent — interested, maybe, hard no — and the matching follow-up cadence fires, with CRM stage transitions handled automatically. The classification is judgement; the routing that follows is rules.

03

Checkpoints & logging

The checkpoint sits before send, deliberately. Outbound under someone's brand is close to irreversible — a bad message cannot be recalled — so every message waits in a review queue until it is approved. The system does the work up to the point of sending, and a person owns the send.

Each prospect's enrichment, generated asset, draft, and reply classification are logged, so a wrong-looking message can be traced back to the data that produced it. When enrichment comes back thin — no usable logo, no brand colour — the prospect is held back rather than sent a broken mockup.

04

Stack — and why

n8nOpenAIMakeVideo APICRM

n8n is the backbone because outbound has a lot of moving parts — enrichment, generation, sending, reply handling — and I need to see each step when a message looks off. Asset and copy generation use OpenAI models where the output has to be produced fresh per prospect, and reply-intent classification runs the same way. Sending, sequencing, and CRM updates stay deterministic so the cadence is predictable and auditable.

05

Results

It shipped for a Berlin AdTech company's sales team, and reply rates are measured per cohort rather than quoted as a single headline number I cannot verify for your inbox. The follow-up sequences run without manual touch once a message is approved.

The real result is that personalization stops being the bottleneck: every prospect can get a one-to-one asset without a rep building it by hand, and the operator still signs off on everything that goes out.

Want outbound that feels one-to-one at scale?

This is the kind of system I build as a fixed-scope sprint. If you already know your outbound motion, we scope the sprint; if you are not sure it is the right first move, start with an Audit.