Skip to content
NewSee how
New

See where a contact's research came from

Contact details now show the verified research behind each personalized line in an outreach draft, with source links you can open and check yourself.

Every personalized line in your outreach comes from somewhere. Now you can see exactly where.

What changed

Open any contact record and you will find a new research section that shows the sources FirstSales used to write that contact's personalization. If a line references a company's recent funding round, a product launch, or a specific detail from their website, you can now see the page it came from, not just the sentence that resulted from it.

This matters because personalization only works if it is accurate. Before this, you had to take the AI's word for it that a fact about a prospect was true. A wrong detail (an outdated job title, a product the company sold off, a funding round that closed a year ago) can turn a personalized email into an obvious tell that no human wrote it, or worse, an embarrassing mistake that lands in front of a real person. Prospects notice when a sales email gets a basic fact about their company wrong, and that noticing rarely works in your favor.

The source links are scoped to what the research process actually used to write that contact's content. You will not see a dump of every page FirstSales crawled about the company. You will see the specific pages and mentions that fed into the line you are about to send. Each source link opens in a new tab so you can verify it without losing your place in the contact record, which means you can check a claim and come right back to where you were reviewing.

This also gives you a way to catch bad personalization before it goes out. If a line claims something about a prospect that does not match the linked source, or the source looks thin or unrelated, you now have a concrete reason to edit or skip that contact rather than guessing. Before, if a personalized line felt slightly off, you had no way to tell whether it was a reasonable inference from real research or a fabrication. Now you can trace it back and decide for yourself.

The feature applies to any contact where research-backed personalization was used to draft outreach, which includes campaigns built from scraped lead lists as well as contacts enriched through other research flows in FirstSales. If a contact's personalization did not rely on any external research (for example, if it was written using only the information you supplied directly), you will simply not see a research section for that contact, since there is nothing to attribute.

How to use it

Go to any campaign's contact list and open a contact's detail view. Below the personalization preview, you will see a new panel showing the research sources tied to that contact. Each source is listed with a link you can click to open the original page.

If you are reviewing a batch of contacts before a send, this is worth checking for your first few sends on a new list or a new industry. Click into two or three sources per contact and confirm the personalization actually reflects what is on the page. Once you trust the pattern for a given list, you can move faster and spot-check less, the same way you would build confidence in any new part of your workflow.

If a source looks wrong (a stale page, a page for a different company with a similar name, or a page that does not support the claim in the personalization), you can edit the draft directly or remove that contact from the send. There is no dedicated "report bad source" button. Editing or excluding the contact is the fix, the same way you would handle any other draft you do not want to send as written.

This is available anywhere contact-level personalization already shows up, so you do not need to hunt for a separate research page. It lives right next to the content it explains, which keeps the review step inside your normal workflow instead of adding a new screen you have to remember to check.

If you manage outreach for a team, this is also a useful thing to point new team members toward when they are learning how FirstSales personalizes at scale. Instead of explaining the research process in the abstract, you can show them a live contact, its personalized line, and the exact source behind it.

Why it matters

Cold outreach lives or dies on trust. A prospect who gets an email that correctly references something specific and recent about their company reads it as effort. A prospect who gets an email with a stale or wrong detail reads it as spam, and that impression sticks for the rest of the relationship, not just that one message. First impressions in a cold inbox are unforgiving, and a factual error in the opening line is often enough to end the conversation before it starts.

Being able to check the source behind a personalized line means you are not sending blind. You can catch the rare bad research pull before it reaches a real inbox, and you can build confidence in the parts of your pipeline that are working well. Over time, that confidence lets you personalize at a larger scale without babysitting every single draft, because you know what "good" research looks like and can trust the system produced it when the sources check out.

It also gives you a paper trail if a prospect ever asks how you knew something about them. You can point to the actual page, not just say "our AI found it somewhere." That is a small thing, but it changes how a conversation feels when a prospect pushes back on a personalized claim; instead of scrambling, you have the receipt in front of you.

For teams running outreach at volume, this also changes how quality control works. Instead of manually researching a sample of contacts yourself to sanity-check the pipeline, you can review the sources FirstSales already used, which is faster and covers the exact contacts going out rather than a separate spot sample.

Availability

Research provenance is visible on contact detail views across your campaigns. No setup or opt-in is required to see it.

All updates

Outreach that keeps going after you log off.Leads, emails, follow-ups and replies, handled.

Connect unlimited mailboxes and let AI agents find leads, write each email and follow up. Or send your own templates in manual mode. From $29/mo.

$1 for 3 days · Cancel anytime · No contract

Install with AI

Your coding agent sets up the FirstSales CLI and skills for you.

Prompt for Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.