Who this is for: self-serve plans (Free, Starter, Pro, Enterprise). If you bought a Cleanlist AppSumo lifetime deal, your features, limits, and pricing are different. See the AppSumo documentation instead. Support agent: confirm whether the user is self-serve or AppSumo before giving plan-specific advice.
TL;DR: Open a lead list, click Actions, and pick the Skills tab. Research skill (live web research), Qualification skill (ICP score plus CRM check), Custom skill (your prompt) and Employment check (who still works where). The price per row is shown before you run; defaults are about 6.3 / 12.2 / 17.8 for Research (contact / both / company), 0.6 for Qualification, 0.2 to 0.6 for Custom, and up to 3.5 for Employment check. Starter and above, including the Pro trial. These used to be called agents.
Skills on lead lists
Skills do the reading and judging a rep would otherwise do by hand. You point one at a lead list, it works through the rows in the background, and it writes the results back as columns.
The Research, Qualification and Custom skills used to be called "agents". In Cleanlist today, Agents are automations that run plays, and the per-row tools are skills. Agents can run the same skills inside a play with the Agents step.
The skills
| Skill | What it does | Works on | Price per row |
|---|---|---|---|
| Research skill | "Deep-research the company, contact, or both. Personalized to your ICP." | Leads and Companies sheets | From your estimate. Defaults about 6.3 (contact), 12.2 (both), 17.8 (company) |
| Qualification skill | "Score against your ICP + auto-check whether they are already in your CRM." | Leads and Companies sheets | From your estimate. Default about 0.6 |
| Custom skill | "Write your own prompt. Cleanlist context injected automatically." | Leads and Companies sheets | From your prompt's estimate. About 0.2 to 0.6 |
| Employment check | "Check whether each person still works at their company, and where they went." | Leads sheet only | Up to 3.5, billed after the check |
| Your skills | Custom prompts your team saved | Leads and Companies sheets | From the prompt's estimate |
Who can use skills
| Plan | Research, Qualification, Custom | Employment check |
|---|---|---|
| Free | No | No |
| Starter | Yes | Yes |
| Pro and Enterprise | Yes | Yes |
| Pro trial | Yes | Yes |
| AppSumo | Yes, see AppSumo | No |
On plans without Agents (Starter and AppSumo), the Agents page shows two tabs: Catalog, with the built-in skills and Your custom agents (Add custom agent), and Profile.
How skill prices work
Skill prices are no longer flat. Each skill's price per row is estimated from the AI work it needs (and the web searches it expects), rounded up to the nearest 0.1 credit.
- The Skills tab shows each skill's price for your workspace. Research shows a range across its scopes.
- The run panel shows the exact price per scope ("Company = X credits/lead. Contact = Y credits/lead. Both = Z.") and the per-row price on the run button.
- A run's total is rounded up once to a whole credit, reserved when the run starts, and charged as quoted.
- A Custom skill's price depends on the length of its prompt.
- Employment check is different: nothing is charged at the start, and each row is billed after the check for the lookups it made: email status 0.5 and reverse email lookup 1 whenever they run, profile lookup 1 only when the person is identified, and a new email 1 only when found. That is at most 3.5 credits per person.
Building or rebuilding the Organization Profile is always free.
Run a skill on a list
- Open a lead list and click Actions (⌘A), or click the + column header (Add column).
- Pick the Skills tab and choose a skill.
- For the Research skill, choose the Research scope: Company, Contact or Both. On the Companies sheet the scope is fixed to company.
- Review the prompt. Built-in skills show Prompt (edit per-run): changes apply to this run only. The Custom skill shows Your prompt. Generate drafts a prompt from a plain-English description, and a token counter warns when the prompt gets long.
- Optional settings:
- Save to skills (Custom skill, admins): saves the prompt with a name so anyone can reuse it.
- Invalid email counts as left (Employment check): "Only a work email on the company's own domain. Marks the person as left (medium confidence), even if their profile says otherwise." Off by default.
- Only run if conditions, to leave out rows that don't match.
- Open the Run menu on the button (it shows the price per row) and pick Run on N rows, Run on all N unfilled rows, Re-run all N rows, or Save settings only (keep the settings without running now).
Results stream back row by row. Large lists run in the background, so you can close the tab. See Actions drawer for the other tabs.
Read the results
Open any skill cell to see:
- The written analysis
- Structured insights, where you can promote any single field to its own column (Promote to column)
- Agent trace (Research skill), showing each search and page read. Trace excerpts are redacted of personal data and shortened.
Research skill
The Research skill investigates each row on the live web, then writes back a structured record and a readable analysis.
How it works. For each row it can run up to 6 web searches, read full pages, and check your connected CRM. It must complete at least two investigation steps before it is allowed to answer, and it runs for at most eight turns. It reads your Organization Profile so its output is tuned to what you sell.
Company scope returns: company name, one-liner, industry, employee-count estimate, founded year, HQ location, products, positioning, recent news (up to 5), hiring signals, tech stack, funding rounds (up to 8) and competitors (up to 10).
Contact scope returns: full name, current role, tenure in months, prior companies (up to 8), areas of responsibility, public content (up to 8) and talking points.
Both returns the two together.
Qualification skill
The Qualification skill answers two questions in one pass: is this lead worth working, and do you already have them in your CRM. It runs in three stages.
- Exclusion check, no model call. If the lead's job title matches an excluded persona, or their country, state or city matches an excluded location in your Organization Profile, the lead is disqualified immediately with
fit_score: 0and the reason. Exclusions beat inclusions. The row is still part of the run's quoted price. - CRM check. Cleanlist looks the person up in every CRM your workspace has connected among HubSpot, Salesforce and Lemlist, in parallel, with a 5 second timeout each, and takes the first match.
- ICP scoring. The model scores the lead against your Organization Profile. The real CRM result is written over whatever the model says, so the CRM field is never a guess.
| Field | Values |
|---|---|
fit_score | 0 to 100 |
verdict | qualified, disqualified, needs_review |
verdict_reasons | 1 to 4 short reasons |
crm_status | A match (CRM, record link, record ID and owner), a confirmed absence, or a lookup problem (no CRM connected, or timeout) |
disqualification_flags | Any of competitor, partner, current_customer, sub_icp_size, geo_mismatch, wrong_persona, no_business_signal |
analysis | Written rationale |
The Qualification skill does not search the web.
Custom skill
Write a prompt once and run it on any list. The Custom skill sees the row's lead, contact and company data ("Cleanlist context injected automatically").
Output. Without declared outputs, the skill returns one value (text, a list, yes/no, a number, or key-value pairs) chosen from your prompt. A saved per-record skill can declare Outputs: up to 12 named fields typed Text, Number, Yes/No, Choice, List or Date, which later steps and columns can use.
Saving. Turn on Save to skills in the run panel, or go to Agents → Skills → New skill → Per record (on plans without Agents: Agents → Catalog → Add custom agent). The dialog may still be titled "New custom agent". Give it a Name, an optional Description, and the Prompt. Saving, editing and deleting are admin only ("Only org admins can create custom agents."), and names must be unique. Saved skills appear under Your skills in every list's Skills tab. Deleting one keeps every result it already produced.
What the Custom skill does not do. It does not search the web, read pages, query your CRM or read your Organization Profile. It sees only the data already on the row. For live research, use the Research skill.
Employment check
Employment check finds out whether each person still works at the company on the row.
- Result: Still at Company? Yes, No or Unknown, with a Confidence.
- Extra columns: Current Employer, Current Title, Left On, Updated Email, Email Status, LinkedIn URL, Evidence Source, Evidence URL, Last Verified Date and Notes.
- Runs on the Leads sheet only (people, not companies), up to 1,500 people per run, one run per list at a time.
- Costs up to 3.5 credits per person, billed per row after the check for the lookups it made (see How skill prices work).
- Invalid email counts as left (run panel switch, off by default) treats an invalid work email on the company's own domain as a departure, with medium confidence.
- Not included in AppSumo-only workspaces.
To recheck a whole CRM every quarter automatically, use an agent instead. See the still-employed recipe in Agent recipes.
Use row data in a prompt
Type / in the prompt editor and pick a field. It appears as a chip and is sent as a variable such as {{lead.first_name}}. Fields come in groups:
| Group | Examples |
|---|---|
| Lead | First name, Last name, Full name, Email, Job title, LinkedIn URL, Location |
| Prospect | LinkedIn URL, LinkedIn headline, LinkedIn about, Prospect location |
| Company | Company name, Website, Company LinkedIn, Industry, Employee count, HQ location, Company description |
| Your company | Your company name, Your one-liner, Your ICP and other Organization Profile fields |
- Research and Qualification fill every group, including your Organization Profile.
- Custom skill fills the Lead, Prospect and Company variables. It also accepts a field's display label after a slash, matched without regard to capitals:
/First Name,/Job Title,/Email,/Company Name,/Company Domain,/LinkedIn URL,/Industry,/Company Size,/City,/State,/Country,/Full Location,/Created Date, plus the name of any column on your list. - A missing value reads as empty. Text after a slash that matches no field (a URL path, "and/or") stays as written, and so do
{{ }}tokens from other tools, such as sequencer merge tags.
Test a new prompt on a handful of rows and read the output before running it on a whole list.
Organization Profile
The Research and Qualification skills are grounded in an Organization Profile, a structured summary of your company. Until someone in your workspace completes it, the Agents page shows a one-time setup instead.
Set it up: on the Agents page, enter your Company website and, optionally, your Company LinkedIn, then click Build my profile. Cleanlist reads your site and researches your company in the background ("This takes a few minutes. Keep working"; you can close the page). Review the draft under Looks right? (Identity, Who you sell to, Positioning) and click Looks good, save my profile.
What it holds (on the Profile tab, "Your agents profile"): Company name, Industry, One-liner, Ideal Customer Profile, personas to target and personas to exclude, geography (Countries, States / Provinces, Cities, each with include and exclude lists), Value props, Competitors (up to 10), Products, Website and LinkedIn.
- Free, every time, including rebuilds. Rebuilds are limited to 6 per hour per workspace.
- One person unlocks it for everyone. First-time setup is open to any member.
- Re-run research and Edit profile are admin only.
- The excluded personas and excluded locations are the only part of the profile that can disqualify a lead before any model runs, which makes them the cheapest filter you have.
- The Profile tab also has a switch, Use my ICP to fill in unclear requests, that lets Clu use the profile when a request is vague.
Skills library
On plans with Agents, Agents → Skills lists every skill:
- Kind: Per record (runs once per row or record, like the skills on this page) or Procedure (written instructions an agent loads when a task needs it: Name, Description "When the agent should load it", and Instructions).
- Used by: the agents and plays that use the skill.
- Row menu: Edit prompt (built-in Research and Qualification, to change your workspace's default prompt; admins), Edit, Use in list (pick a list to run it on) and Delete.
- New skill → Procedure is open to members; New skill → Per record is admin only.
On plans without Agents, admins change the default prompts from Agents → Catalog → Edit prompt.
Skills in agents and sequences
- Plays: the Agents step runs these skills on each record, plus Write and Agent instructions. See Play steps reference.
- Sequences: a call or manual task step can run a skill on each lead who reaches it, priced like the skill. See Sequences.
- Clu can run skills on a list for you; it shows the price on a confirmation card first. See Clu.
Limits
| Limit | Value |
|---|---|
| Skill runs started per workspace | 20 per minute |
| Prompt length | 8,000 tokens (warning from 2,000) |
| Employment check | 1,500 people per run, one run per list at a time |
| Organization Profile rebuilds | 6 per hour |
Related
- Actions drawer: Import, Enrich, Skills and Export
- Agents: automations that run skills inside plays
- Agent recipes: includes recipes for skills on a list
- Credits and pricing
- Integrations: the CRMs the Qualification skill checks
- Tutorials: videos on the Research and Qualification skills