Lead lists
Bring your own CSV from Apollo, Sales Nav, HubSpot, Heyreach, or Instantly.
How this works
Upload any CSV — column names like Full Name, Title, Company, LinkedIn URL,
Company Website are auto-detected. Each upload becomes a new list. From there you can filter against an ICP,
run AI enrichment, or generate outreach copy. Lists are private to your account.
ICP definitions
Define who you want. The AI ICP filter scores every lead against this.
What goes here?
Free-text ICP description handles nuance. The structured fields (titles, seniorities, industries, geographies, sizes) give the AI hard pass/fail rules. Excluded fields are hard disqualifiers. Multiple ICPs are fine — pick one per filter run.
Filter & messages
Score leads against an ICP, then generate personalized LinkedIn + email copy for the matches.
What's the difference between this and AI Enrichment?
Filter & Messages is the all-in-one outreach pipeline: ICP-score every lead, then generate ready-to-send copy for the matches. Use it when you have a clean list and want copy. AI Enrichment lets you define your own AI columns ("Verify employment", "Tech stack", anything), run them on any list. Use it for arbitrary research, fact-checking, or building custom data points.
Run AI filter
Generate personalized messages
AI Enrichment
Custom AI research columns. Write a prompt, point it at any list, get one or many output columns per lead. Run as many parallel agents as you want.
How to use this
1. Describe what you want in plain English ("verify the lead actually works at the company shown"). Click Generate prompt and the AI will turn it into a structured prompt with placeholders.
2. Reference any column in the prompt with double braces: {{full_name}}, {{company}},
{{headline}}. They get substituted per lead at runtime.
3. Pick a fetch field (optional). If set, the agent fetches that URL (e.g. profile_url) for each lead
and feeds the page content to the model. The fetcher reads structured metadata (og:title, og:description, headline meta tags) when full body content isn't returned, which often contains the most relevant signals (current title, headline, employer). Falls back to guessing the company domain if the field is empty.
4. Define output fields. One field = one column on every lead. Multiple fields = multiple columns from a single agent run.
5. Save the prompt with a name to reuse later, or run it inline.
Prompt builder
Describe → AI drafts a structured prompt for youAI column
Prompt library
Saved prompts you can run on any list. Each one is a named AI agent.
Why save prompts?
Once you've crafted a good prompt — say, "verify employment" — save it once and reuse on every new list. Edit it, rerun it, share it later when we add team workspaces. Each saved prompt becomes an AI column on whichever list you run it on.
Leads
All your leads, with ICP decisions, enrichment columns, and outreach copy in one view.