AI prompts for sales prospecting you can run on every account

Ten AI prompts for sales prospecting that cover research, ICP fit, and first lines, each written to run on a whole list at the same standard.

Photo of Utku Zihnioglu

By

ยท CEO & co-founder

Published Oct 30, 2026

ยท 11 min read

Blog cover: AI prompts for sales prospecting you can run on

The AI prompts for sales prospecting that hold up do three jobs: research an account, judge whether it fits your ICP, and write a first line from something the research found. Most prompt lists get the wording right and the output wrong. They ask for talking points, so every answer comes back as a paragraph in its own shape, with no source and no way to say that nothing was found.

Below are ten prompts that return named fields instead, with a worked example and the steps to run any of them on a whole list. If you still need the list itself, start with people and company search that arrives with work emails and a fit score. For the wider case on research past fifty accounts, see how AI lead research works at scale.

To try them on your own accounts as you read, set up a free workspace and paste in your first prompt.

What a prospecting prompt needs before it runs on a list

Most prompt advice is about wording: give the model a role, be specific, add an example. It helps a little. On a list, five other things matter more:

  • Named inputs. Say which fields the prompt reads, such as {company_domain} and {job_title}, so account 300 gets the same evidence as account 3.

  • One job. A prompt that researches, scores and writes at once does all three worse, and you cannot fix one part without paying for the rest again.

  • Fixed output fields. Ask for named fields with a length, not a summary, because you can sort and filter on a field and never on a paragraph.

  • A way out. Say what to return when nothing supports an answer. Without that line, a model fills the gap with something plausible, which is the everyday face of AI hallucination.

  • A source. Every fact arrives with the page it came from, so a rep can check it in one click before sending.

Here is the difference on one prompt.

Before: Research {company} and give me some talking points for outreach.

After: Read {company_domain}. Return what_they_sell (one sentence,
under 20 words, their own words), sells_to (businesses, consumers,
or both), and source_url. If no page says what they sell, return
null for every field

Before: Research {company} and give me some talking points for outreach.

After: Read {company_domain}. Return what_they_sell (one sentence,
under 20 words, their own words), sells_to (businesses, consumers,
or both), and source_url. If no page says what they sell, return
null for every field

Before: Research {company} and give me some talking points for outreach.

After: Read {company_domain}. Return what_they_sell (one sentence,
under 20 words, their own words), sells_to (businesses, consumers,
or both), and source_url. If no page says what they sell, return
null for every field

The first one works in a chat because you are there to correct it. Only the second holds up on account 212, when nobody is watching.

A small complaint while we are here. "You are a top-performing SDR" at the top of a prompt probably does less than people think. The model already knows what an SDR is. What it does not know is your ICP, and no persona line supplies that.

AI prompts for sales prospecting: account research

Five research prompts. Run them first, because the fit and first-line prompts in the next section read their answers.

1. What they sell, in one line

Read {company_domain}. Return what_they_sell (one sentence, under
20 words, their own words), sells_to (businesses, consumers, or both),
and source_url. If no page says what they sell, return null

Read {company_domain}. Return what_they_sell (one sentence, under
20 words, their own words), sells_to (businesses, consumers, or both),
and source_url. If no page says what they sell, return null

Read {company_domain}. Return what_they_sell (one sentence, under
20 words, their own words), sells_to (businesses, consumers, or both),
and source_url. If no page says what they sell, return null

2. The recent trigger

Find the most significant public event at {company_name}
({company_domain}) in the last 12 months: funding, a launch, an
acquisition, or a leadership hire. Return event, event_date, and
source_url. If nothing dated in the last 12 months turns up, return
null. Never guess a date

Find the most significant public event at {company_name}
({company_domain}) in the last 12 months: funding, a launch, an
acquisition, or a leadership hire. Return event, event_date, and
source_url. If nothing dated in the last 12 months turns up, return
null. Never guess a date

Find the most significant public event at {company_name}
({company_domain}) in the last 12 months: funding, a launch, an
acquisition, or a leadership hire. Return event, event_date, and
source_url. If nothing dated in the last 12 months turns up, return
null. Never guess a date

3. The hiring read

Read the careers page of {company_domain}. Return open_roles (a
count), departments (a list), and what_it_suggests (one sentence on
what they are building or fixing). If there is no careers page,
return null, not zero

Read the careers page of {company_domain}. Return open_roles (a
count), departments (a list), and what_it_suggests (one sentence on
what they are building or fixing). If there is no careers page,
return null, not zero

Read the careers page of {company_domain}. Return open_roles (a
count), departments (a list), and what_it_suggests (one sentence on
what they are building or fixing). If there is no careers page,
return null, not zero

Null rather than zero matters more than it looks. Zero says they are not hiring. With null, the honest reading is that you could not check, and the fit prompt below should treat those two very differently.

4. How they charge

Read the pricing page of {company_domain}. Return pricing_model
(per seat, usage, flat, quote only, or not public), entry_price if
one is listed, and source_url

Read the pricing page of {company_domain}. Return pricing_model
(per seat, usage, flat, quote only, or not public), entry_price if
one is listed, and source_url

Read the pricing page of {company_domain}. Return pricing_model
(per seat, usage, flat, quote only, or not public), entry_price if
one is listed, and source_url

5. The person

Using {linkedin_url} and {job_title}, return what_they_own (one
sentence), topics (up to three things they posted about recently),
and hook (the most specific true thing about them, under 25 words).
If they have not posted in six months, leave topics and hook empty

Using {linkedin_url} and {job_title}, return what_they_own (one
sentence), topics (up to three things they posted about recently),
and hook (the most specific true thing about them, under 25 words).
If they have not posted in six months, leave topics and hook empty

Using {linkedin_url} and {job_title}, return what_they_own (one
sentence), topics (up to three things they posted about recently),
and hook (the most specific true thing about them, under 25 words).
If they have not posted in six months, leave topics and hook empty

AI prompts for sales prospecting: fit and first lines

Lists of AI prompts for lead generation tend to jump from research straight to the email. The step in between, deciding who deserves an email at all, is the one that protects your reply rate.

"Low reply rates drag your deliverability down, and poor targeting is what causes low reply rates."

Utku Zihnioglu, CEO of Oneprofile

6. ICP fit, with reasons

Score {company_name} against our ideal customer profile: {icp}.
Use only {what_they_sell}, {sells_to}, {employee_count}, and
{open_roles}. Return band (strong 70+, possible 40 to 69, poor under
40), score (0 to 100), reasons (the two or three facts that decided
it, naming the field each came from), and missing. If most fields are
empty, return no band and list what was missing. Poor means checked
and not a fit, never could not check

Score {company_name} against our ideal customer profile: {icp}.
Use only {what_they_sell}, {sells_to}, {employee_count}, and
{open_roles}. Return band (strong 70+, possible 40 to 69, poor under
40), score (0 to 100), reasons (the two or three facts that decided
it, naming the field each came from), and missing. If most fields are
empty, return no band and list what was missing. Poor means checked
and not a fit, never could not check

Score {company_name} against our ideal customer profile: {icp}.
Use only {what_they_sell}, {sells_to}, {employee_count}, and
{open_roles}. Return band (strong 70+, possible 40 to 69, poor under
40), score (0 to 100), reasons (the two or three facts that decided
it, naming the field each came from), and missing. If most fields are
empty, return no band and list what was missing. Poor means checked
and not a fit, never could not check

That last sentence is the rule the built-in ICP scorer in Oneprofile is held to, and it is probably the most useful line in this article. Without it, every thin account scores poor, and a thin account is often just a small site.

7. The disqualifier check

Given {what_they_sell} and {sells_to}, answer disqualified (yes, no
or unknown) and why (one line). Disqualify if they sell only to
consumers, resell our category as an agency, or have under 10
employees. Answer unknown when the evidence does not say

Given {what_they_sell} and {sells_to}, answer disqualified (yes, no
or unknown) and why (one line). Disqualify if they sell only to
consumers, resell our category as an agency, or have under 10
employees. Answer unknown when the evidence does not say

Given {what_they_sell} and {sells_to}, answer disqualified (yes, no
or unknown) and why (one line). Disqualify if they sell only to
consumers, resell our category as an agency, or have under 10
employees. Answer unknown when the evidence does not say

8. The use case, in their words

Using {what_they_sell} and what we sell ({our_description}), name
the one workflow of theirs our product would change, the role that
owns it, and the before and after in their terms. If it is a poor
fit, say so in fit_note and return null for the rest

Using {what_they_sell} and what we sell ({our_description}), name
the one workflow of theirs our product would change, the role that
owns it, and the before and after in their terms. If it is a poor
fit, say so in fit_note and return null for the rest

Using {what_they_sell} and what we sell ({our_description}), name
the one workflow of theirs our product would change, the role that
owns it, and the before and after in their terms. If it is a poor
fit, say so in fit_note and return null for the rest

9. The first line

Write one opening sentence to {first_name}, under 25 words, built
on {hook} or {event}. It must state a fact from those fields, not a
compliment. No "I hope", no "I noticed", no exclamation marks. If
both fields are empty, return nothing

Write one opening sentence to {first_name}, under 25 words, built
on {hook} or {event}. It must state a fact from those fields, not a
compliment. No "I hope", no "I noticed", no exclamation marks. If
both fields are empty, return nothing

Write one opening sentence to {first_name}, under 25 words, built
on {hook} or {event}. It must state a fact from those fields, not a
compliment. No "I hope", no "I noticed", no exclamation marks. If
both fields are empty, return nothing

10. The follow-up that adds something

Here is the first email: {email_1}. Write a follow-up under 60
words that adds one fact the first did not use, from {use_case} or
{open_roles}, and ends on the same ask. Never open with "following
up" or "circling back".
Here is the first email: {email_1}. Write a follow-up under 60
words that adds one fact the first did not use, from {use_case} or
{open_roles}, and ends on the same ask. Never open with "following
up" or "circling back".
Here is the first email: {email_1}. Write a follow-up under 60
words that adds one fact the first did not use, from {use_case} or
{open_roles}, and ends on the same ask. Never open with "following
up" or "circling back".

One prompt, two accounts

Say prompts 2 and 9 run on two invented accounts. Cleardue (cleardue.example) has a news page and a careers page. Thistle Advisory (thistleadvisory.example) has one page and a contact form.

Field

Cleardue

Thistle Advisory

event

Hired its first head of sales

null

event_date

2026-09-14

null

source_url

cleardue.example/news

null

first_line

Cleardue hired its first head of sales in September, so the first outbound list is probably being built by hand right now.

empty

what the rep does

Checks the source, sends

Skips it, or digs by hand

The empty answer on the right is the correct one. A rep who sees a blank knows to skip or dig. An invented launch, on the other hand, goes out in the email.

Run a prompt on every account

Anyway, back to the problem from the top. A chat window runs a prompt once, and a list needs it run a few hundred times, the same way, with every answer kept on its account. Each of these AI prompts for sales prospecting was written for that.

"GTM comes down to scraping the web and running AI at scale, efficiently, and those are big infrastructure problems."

Utku Zihnioglu, CEO of Oneprofile

In Oneprofile, a prompt runs as a Use AI agent on a table:

  1. Bring the accounts in: import a CSV, import from your CRM, or add them from Find leads.

  2. Click Tools, open the Agent tab and click Use AI. Describe what you want and click Generate, or click Set up manually.

  3. Paste the prompt into the Prompt card. Replace each {placeholder} by typing / and picking the column that holds it, such as Company domain. Type @ to fold in a section of your business context, such as Ideal customer profile, in place of {icp}.

  4. Pick an Effort level, and turn on Web research for prompts 1 to 5, which need to read pages. Prompt 5 also needs the Read a LinkedIn profile switch under it, which charges its own price only when it finds the profile. Every level shows the most an account can cost before you run.

  5. In Outputs, pick Fields and add one for each field the prompt asks for, so every answer is kept on the account where you can sort and filter on it.

  6. Click Create & run 10 rows and read the ten answers. Where one is wrong, right-click it, choose Needs work and say why. The agent keeps your reason as a learning and runs that answer again. Then run the rest.

Triggers go stale, so prompts 2 and 3 are worth repeating. Open Run conditions, set Refresh to On a schedule, and pick Re-run every (hours). The editor projects the monthly credit cost before you save.

You may not need to write most of these at all. Built-in agents ship with the same jobs and a flat price for each account they answer:

Job

Built-in agent

Price per answered account

What they sell (prompt 1)

Company researcher

5 credits, 10 on High

Recent trigger (prompt 2)

News finder

5 credits

Hiring read (prompt 3)

Hiring signal finder

5 credits

How they charge (prompt 4)

Pricing finder

5 credits

The person and a hook (prompt 5)

Person researcher

5 credits

ICP fit with reasons (prompt 6)

ICP scorer

3 credits

Use case (prompt 8)

Use case finder

5 credits

None of them charges for an account it cannot answer. Your own prompt is priced the other way: it pays for the research it did, answer or not, which is one more reason to test on 10 first.

The first lines are the one place to stop writing prompts by hand. A sequence's writer reads your research directly: on its AI writing tab, Write from lists the research you ran, and the agent takes a different one as the angle for each email. You write what you are asking for, and it writes why you are reaching out to that person.

If you only take one thing from these AI prompts for sales prospecting, take prompt 6's last rule and add a version of it to every prompt you already use. Then pick the research prompt you trust least on account 300, probably the trigger finder, and run it on ten of your own accounts free.

Do this in Oneprofile

Write the prompt once, run it on every account

Use AI runs your prompt on every account in a table, with web research and your ICP when you switch them on. Test it on 10 first, and see the price before it runs.

  • Oneprofile logo

AI prompts for sales prospecting: common questions

What are the best AI prompts for sales prospecting?

The ones that do one job each: research an account, judge its fit against your ICP, or write a first line from a fact you found. Each names its inputs, asks for fixed fields, and says what to return when the evidence is not there.

Can I paste these prompts into ChatGPT?

Yes, for a few dozen accounts. Past that the answers drift as the prompt drifts, nothing is saved on the account, and nothing runs again when the company changes. A long list needs the same prompt run on every account, with the answers kept.

How do I stop AI from making up facts about a prospect?

Give it a way out. Ask for a source URL with every fact, and tell it to return nothing when no page supports an answer. A prompt with no permission to come back empty fills the gap with something plausible.

Isn't AI personalization just flattery?

It is when the prompt asks for a personalized line and gives the model no facts. A first line built on one checked fact, such as a hire they just made, reads like research because it is. With no fact to use, the prompt should write no line.

What are good AI prompts for lead generation?

Prompts that turn a list into a shortlist: an ICP fit score with reasons, a disqualifier check, and a trigger finder for news or hiring in the last year. Building the list itself is a search job, not a prompt.

How much does it cost to run a prospecting prompt on a whole list?

In Oneprofile, the built-in News finder costs 5 credits for each account it answers and the ICP scorer 3, so 100 accounts with both cost up to 800 credits. A prompt you write yourself shows the most an account can cost before it runs.

About this article

Photo of Utku Zihnioglu

Utku Zihnioglu

CEO & co-founder

Serial entrepreneur who built infrastructure companies handling billions of requests. Now leads engineering at Oneprofile, which finds the people worth talking to, researches each one, and follows up until they reply.

Drafted with AI from our product docs and code. Utku Zihnioglu answers for what it says.

Run your best prospecting prompt on every account

Write the prompt once, test it on 10 accounts, then run it on the whole list with the price shown before anything runs.

Free plan: 200 credits a month, 3 integrations, no card

Read next

Find the right people, not just a bigger list.

Run your best prospecting prompt on every account

Write the prompt once, test it on 10 accounts, then run it on the whole list with the price shown before anything runs.

Free plan: 200 credits a month, 3 integrations, no card

Read next

Find the right people, not just a bigger list.