Getting started
Quickstart
Four steps stand between a new workspace and a list that is safe to send to. They are in this order because each one makes the next cheaper.
- 1. Connect your keys. Apollo, Instantly, HeyReach, Apify. Anything running on your own provider account costs no credits here, because that provider is already billing you.
- 2. Bring a list in. A CSV, an Apollo search, or a Sales Navigator search pulled straight in. Duplicates against your existing lists are flagged before the import, not after.
- 3. Clean and score it. Name casing, company names, obvious junk, and an ICP score per row. All of this is free: you are not paying to find out which rows are not worth verifying.
- 4. Run the waterfall. Only now does anything cost credits, and only on the rows that survived step 3.
Lists and sourcing
A list is the audience for a send, and it starts empty. Creating one asks for a platform, a product and a name; filling it is a separate step on the list's own page, which is where every source lives: a live B2B database search, a Sales Navigator search you run and export, a plain CSV, or a guided import of your own LinkedIn connections. Running any of them again on the same list adds to it, and rows already there are skipped rather than duplicated.
The waterfall method
A single email verifier cannot tell a live mailbox from a dead one on a catch all domain. It is not a quality problem, it is what SMTP allows: the server accepts everything, so every address looks deliverable. Sending to those addresses is how a domain's reputation goes, and reputation is the asset outbound runs on.
So verification runs in two passes. The first checks every address cheaply. Whatever comes back decided, deliverable or invalid, is finished and is never paid for again. Only what comes back catch all or unknown goes to the second, deeper check, which costs more and is worth it on a fraction of the list rather than all of it.
You see one credit figure for the whole thing rather than two provider line items, and the estimate is shown as a floor before you start, because the size of the second pass is not knowable until the first one has run.
What a run does, in order
- 1. Clean: casing, company names, junk rows, optional market conventions.
- 2. Score: every row against your ICP personas, before anything is paid for.
- 3. Verify: pass one over every address.
- 4. Resolve: pass two over only the undecided ones.
- 5. Enrich: LinkedIn and company data on what is left standing.
Filling in one contact
The waterfall above is for a list. A single contact gets the same work on demand, from its own page, which is where you stand when you are about to reply to somebody rather than launch to a thousand people.
A lead sourced from LinkedIn usually arrives without a work email or a phone number. Each missing field carries the action that fills it, priced before you press it: a work email costs 5 credits, a phone number 50, and the remaining details (company domain, job title, LinkedIn profile) 8. A lookup that finds nothing is refunded in full, because you clicked a button that promised a number and did not get one. On your own provider key these run on your account and cost no credits at all, and no price is shown.
Enrichment only ever fills a blank. A value already on the record was imported from your list or typed by somebody on your team, and a provider's guess should not win over either. Correct anything in place and it stays corrected.
You can also check one address before sending to it. The verdict is reported as the verifier gave it rather than flattened to a tick, because the answers mean different things: a catch all domain accepts every address so nobody can confirm the mailbox exists, a role address reaches a shared inbox rather than a person, and a spam trap costs your sending domain its reputation, which is a far more expensive mistake than a bounce. Re-checking the same address within thirty days is free.
ICP scoring
An ICP persona is a short description of who you sell to: the titles, the company sizes, the industries, and the ones that are never a fit. Every imported row is scored against it out of 100 before a single message is written, and the score is a filter you can act on rather than a number in a column.
Scoring is free and runs on the whole list. That is the point of doing it first: the rows it rules out are rows you never pay to verify. A list that arrives at 800 people and goes to the waterfall at 300 costs what 300 costs.
The scorer reads what is on the row, and only that. It does not infer a seniority from a name or an industry from a company that could be anything, which is why a row with nothing to go on comes back low and honest rather than confidently wrong.
Who we sell to: Heads of Sales, VPs of Sales, CROs and founders who still own revenue. B2B SaaS companies, 20 to 250 employees, selling to other businesses. They already run outbound and are unhappy with reply rates, not starting from zero. Never a fit: Agencies and consultancies who resell outbound to their own clients. Companies under 10 people, and anyone selling only to consumers. Recruiters, unless they are hiring for their own team.
Campaigns and sequences
A campaign is the message, not the audience. You build it in four passes: the details and which sending accounts carry it, then the sequence itself, then who receives it, then a review of the whole thing before anything leaves.
Each step in a sequence can hold two variants. They are sent as a genuine split, so the reply-rate difference you read afterwards is a difference between the two pieces of copy rather than between two moments in the week.
Personalization that does not embarrass you
An icebreaker is written per lead, from what is actually known about that lead: their role, their company, what the company has been doing. A placeholder with nothing behind it falls back to wording that reads normally instead of leaving a bracket in a real email, and a lead with too little on the row is skipped rather than guessed at.
Every generation is shown before it is used, and any of them can be rewritten by hand. Nothing writes itself into a send without a person seeing it first.
Replying from the pipeline
Open a lead and the whole conversation is there, in order, including anything you sent from Instantly or HeyReach directly. Write your own reply, or generate a draft in your own register: tone, length and emoji use come from your reply-style settings, and a stage you have written a template for uses that template instead of calling a model at all. Drafts are kept per lead, so leaving to check something does not lose one.
Integrations
Connections are API keys you paste once, under Settings → Connections. Instantly, Smartlead, HeyReach and Dripify carry the sending; Apollo supplies contact data; HubSpot keeps your CRM out of your own campaigns. Anything running on a key you connected yourself is billed by that provider, not in credits here.
The sync cutoff, and why old replies never arrive
Connecting asks how far back the first sync may reach: from today, the last 30 or 90 days, or a date you choose. That cutoff is permanent for the connection rather than a one-off catch-up. A two-year-old account synced in full would fill a pipeline with threads that closed long ago, and every one of them would look like a new reply.
When a connection stops working
Each connection carries its own state. Active means it synced recently. Not syncing means it has not in a while, which an expired key and a quiet inbox look identical from the outside. Action required means a sync actually failed, and the provider's own message is kept so the fix is obvious. A failure that persists also sends a notice, once a day at most, because a broken key is otherwise invisible: replies simply stop.
Keeping customers out of your campaigns
The do-not-contact list suppresses individual addresses and whole domains at import time, before a row can reach a send. With HubSpot connected, contacts already in your CRM are pulled in on a schedule and excluded the same way, with the reason recorded on the row so you can see why somebody was left out.
Building your own integration
The other direction, your systems reading from TechSales, runs on the API and webhooks: API keys with scopes, signed events when something changes, and field mapping for your CRM. Everything a developer needs is in the developer docs.
Billing and credits
There are two separate things here. The subscription is what the workspace costs each month. Credits are what paid provider work costs, bought when you want them and spent only when something actually runs.
A workspace has one credit balance, spent across every paid step: verifying an address, resolving a catch-all, enriching a profile, researching a company. Purchased credits never expire and never reset when a subscription renews. They stay until they are used.
What is free, and what is not
Cleanup, classification, ICP scoring, drafting and sending replies cost nothing and keep working at a balance of zero. Browsing a lead search is free too; only importing a contact, and revealing an address that comes back, is charged. On your own provider key even that is free here, because the provider is already billing you.
Running out
A paid run that would overdraw the balance is refused before it starts, and says exactly how many more credits it needed. Nothing half-completes and nothing is deducted for work that was not done: a run you cancel settles at what it actually processed, and anything reserved and unused comes back.
FAQ
Signals on active deals
Signals → Active deals watches the deals that are actually in flight, the ones in Demo or Discovery and POC or Proposal, and tells you when something happens at one of those companies that gives you a real reason to follow up: funding, a launch, a hiring push, a public statement of priorities.
A signal is a live web search, run per lead when you ask for it, with its sources kept next to the summary. It costs one research credit, which is why it is a button rather than something the screen does on load for every deal you glance at.
The screen shows three different things, and the difference matters. A signal found. A search that ran and came back with nothing recent, which is worth knowing. And a company nobody has searched yet, which is a prompt to act rather than a fact about the company. If there is no signal, the AI follow up refuses to write one: a warm message about an event that did not happen is worse than no message at all.
Funding · 3d ago Northline Logistics raised a 12M Series A led by Vantage Partners. Source 1 Source 2 Suggested follow-up (AI, references the signal above) "Congratulations on the round. You mentioned expanding the commercial team this quarter, so the timing on what we discussed may have changed. Worth fifteen minutes next week?"
Where your data lives, and who can see it
Every row belongs to one workspace, enforced in the database rather than by the interface hiding it. A login that is not a member of a workspace does not get its rows back at all, which is a different thing from not being shown them. Provider keys are stored encrypted and are never sent to the browser, including to yours.
Teammates and what each role can do
An admin manages billing, provider keys and how the workspace is configured. A member works the pipeline: leads, replies, lists, campaigns. Invitations need a work email, and an invitation to a domain other than your own is always created as a member, whatever the form asked for.
Language
The interface is English. What your prospects receive is not changed by that: the outreach templates and the booking page stay in the language they were written in.