Bringing people into an Outreach custom
An Outreach custom has no quiz. You bring the people in yourself — from your CRM, your ads, a form on your site, or a spreadsheet you already have — and each one gets their own video and page. They all land in Leads.
Where people come in
Section titled “Where people come in”Open Leads. Everything starts from Add people, which offers four ways in:
| Option | What it does |
|---|---|
| Upload a CSV | import a file you already have |
| Paste a list | paste emails or a spreadsheet range |
| Add one person | type one person’s details by hand |
| Connect an app | send people in from another tool, by webhook |
The same four show on an empty table. The Connections tab lists everything connected to this custom — webhooks and past imports — with Import a file and Connect an app at the top.
Everyone arrives waiting for a video
Section titled “Everyone arrives waiting for a video”However someone gets in, they arrive without a video. Nothing is made until you ask, because making a video spends one from your plan.
The cards above the table sort people by where they are:
| View | Who is in it |
|---|---|
| Received | everyone who arrived, from any source |
| To generate | waiting for a video |
| Generating | their video is being made |
| Ready | video done |
| Failed | something went wrong — open the status to see why |
| Watched | started their video at least once |
While people are waiting, a bar above the table says how many, and how many minutes of video are left on your plan. Press Generate all there, or select the people you want and press Generate. A waiting person’s own row also has a Generate button.
Bringing people in from another tool
Section titled “Bringing people in from another tool”An inbound webhook is a URL. You give it to another tool, that tool sends people to it, and they appear in Leads. Nothing to install, no API key to create.
- In Leads, open Add people, then Connect an app, and pick Webhook.
- Copy the Ingest URL.
- Paste it into whatever is sending you people — Make, Zapier, n8n, your form builder, your CRM. Anywhere that asks for a webhook or POST URL.
- Send one test from that tool.
- Come back and open the Connections tab. Your test will be in Recent requests.
Matching their fields to yours
Section titled “Matching their fields to yours”Send one person per request, as a flat JSON object. Anything recognised fills a field; anything else is listed in Recent requests so you can map it.
Three rules:
- Use the field’s name as it appears in your table — or the sender’s own name, and map it in Match your fields.
- Capitals, spaces, dashes and underscores don’t matter.
- If a name matches nothing, the value is reported rather than dropped. Nothing is lost silently.
When an answer doesn’t match
Section titled “When an answer doesn’t match”If they send hot_lead and your answer is “Hot lead”, that matches on its own.
If they send a genuinely different word, you’re asked whether to match it to an
answer you already have, or add it as a new one.
Checking what arrived
Section titled “Checking what arrived”Recent requests, in the Connections tab, lists what’s been sent, successes and failures. Click one to jump to the person it created, or to see exactly what the other tool sent, word for word. From a person’s row menu, View received JSON shows the same thing. Deliveries are kept for 30 days.
If the same person arrives twice
Section titled “If the same person arrives twice”The same information arriving twice within a few minutes is treated as one person. Make and Zapier retry automatically when they don’t get a quick answer, and this stops a retry becoming a duplicate person and a duplicate video. The repeat is noted in Recent requests, so it’s never silent.
Pausing, replacing and removing
Section titled “Pausing, replacing and removing”A webhook’s controls are in its Settings, from its row in Connections.
| Control | What it does |
|---|---|
| Pause | stops deliveries; your URL keeps working |
| Generate a new URL | old URL stops immediately — for leaks, not pausing |
| Remove this webhook | only for a webhook that was never used |
You can have several webhooks on one custom — one per tool, each with its own URL, field matching and pause switch. Name them (“Meta lead ads”, “Make — CRM”): the name is what shows in your table as each person’s origin.
Importing a list you already have
Section titled “Importing a list you already have”- In Leads, open Add people, then Upload a CSV — or Paste a list to paste the rows straight in.
- Check the matching, then import.
Your headers are matched where they’re recognised. For anything else, point the column at an existing field, let it create a new one, or skip it. If a column feeds a multiple-choice field and some values don’t match, you’re told which ones before importing — with the same choice as a webhook: match it, or add it.
Column types are guessed from the values. Dates become dates, links become links,
a repeated set of short labels becomes a multiple-choice answer, and a column of
plain numbers becomes a Number field — a price, a count, an age. Numbers
written with formatting ($1,200, 7,5, 10%) stay as text, so no value is
lost on the way in.
Several answers in one cell can be separated with a comma, semicolon or pipe —
Design, Copywriting reads as two answers. For yes/no columns, yes / y /
true / 1 / on read as yes; no / n / false / 0 / off read as no.
Making videos automatically
Section titled “Making videos automatically”By default people arrive waiting and you generate when you choose. In a webhook’s settings, turn on Auto-submit incoming leads and a video is made as soon as someone arrives through it. Use it once you’re happy with your setup — it spends from your plan without asking.
Auto-submit is paced: a busy source makes videos steadily rather than all at once, so a burst of arrivals can’t consume your whole plan in minutes. Everyone still arrives immediately — only the video-making is spread out.
When something doesn’t work
Section titled “When something doesn’t work”Someone arrived but their row is empty. Their tool’s field names didn’t match any of yours and no matching was set up yet. Open Match your fields, use Detect from last request, map them, then send another test.
I fixed my matching and re-sent, but nothing changed. Send a new test rather than the same one — identical information sent twice in quick succession is treated as one person.
Recent requests shows a rejection. Click it. The usual causes are a wrong or old URL (if you regenerated it), or a tool sending something other than JSON. Viewing the received data shows what actually arrived.
Nothing arrives at all. Check the webhook isn’t paused, and that the URL was pasted in full — including the long code at the end.