Cold Leads

Help

Step-by-step guides, answers and a direct line to support.

Showcase

ContactsRich cards: several e-mails and phones, social profiles with avatars, tags, notes, linked contacts and full history.Open →
Website captureOne form or API key on any site — every submission lands in the CRM as a subscriber, bots filtered.Open →
ImportCSV or a file in seconds; on Team paste any text and AI extracts the contacts.Open →
AI names for cold e-mailsOnly an address? AI infers the person’s name and company from the e-mail so the cold e-mail feels personal — you approve every suggestion.Open →
Lists & tagsContact lists live in the sidebar: the gear next to “Lists” creates, renames and deletes them; Contacts, Campaigns and Inbox filter by list, and selected rows go into a list right from the table.Open →
Funnel stagesCold → subscriber → lead → customer → regular — moved manually, by API or after a campaign.Open →
TemplatesMarkdown with variables, six e-mail styles or your own HTML layout, and a per-template design: logo, header image, fonts, colour, footer, attachments.Open →
Fonts, logo & own HTMLGoogle Fonts or uploaded font files for headings, text and footer; logo and header image upload; import your own HTML e-mail as the layout. Brand files are listed in Settings with a copy-link for your HTML.Open →
AI assistantAI writes templates, prepares whole campaigns and imports contacts from any text.Open →
CampaignsAudience filters, dry-run preview, daily limits and human-like spread sending that keeps going in the background. Each campaign page keeps recipients, statuses and content; finished campaigns go to the Archive tab.Open →
Team & rolesUp to 10 agents per account (Solo 1, Team 4, Business 10): admin, agent or view-only support, with per-agent limits.Open →
Billing & creditsSolo, Team or Business — Change plan in Settings, upgrades apply now with unused days credited to the first payment, downgrades carry unused credits over and the lower price applies from the next payment; Update card details and Cancel subscription are one click, and a cancelled plan works until the paid period ends. Cancelling offers a one-time 20% discount for 3 months. Verification credits renew monthly and can be topped up in packs of 1 000.Open →
Send from your own mailboxConnect Gmail, Microsoft 365, any SMTP server or your own domain — campaigns go out from your address and replies land in your inbox.Open →
Chat with every contactEach contact has its own conversation in a side panel: campaign e-mails, your replies with attachments and the client’s answers pulled from Gmail, Microsoft 365 or IMAP — with an editable subject, an AI reply draft and message deletion.Open →
List verificationPaste a list — every address is checked for syntax, disposable domains, role accounts and MX records and lands in Valid, Risky or Invalid. Invalid ones never receive campaigns.Open →
Help & reportsGuides, FAQ and a one-click report with a screenshot — from any page.Open →

Guides

Getting started in 10 minutes
  1. Settings → business name, sender name and reply-to address — they go into every e-mail footer.
  2. Contacts → Create contact, or Import contacts (CSV or, on Team, any text via AI).
  3. Templates → open a seeded template or create your own; use {name}, {company}, {email}.
  4. Your profile lives in the top-right corner (on phones — in the menu): Settings, password and sign-out. The interface language is the dropdown at the bottom of Settings.
  5. Campaigns → New campaign → pick a template → choose the audience → check the dry-run → Launch.
Open
Verifying lists and using the API
  1. Verification → paste addresses or upload a CSV, press “Verify list”. Each address costs 1 credit (Solo 100, Team 1 000, Business 10 000 a month; extra packs $5 per 1 000).
  2. Buckets: Valid — the domain accepts mail, and the reason says whether the mailbox was confirmed or not checked; Risky — accept-all server, disposable domain, inconclusive answer or timeout; Invalid — bad syntax, no mail server or mailbox rejected. Role accounts stay Valid with a lower score. Export any bucket as CSV or import Valid/Risky into contacts.
  3. Contacts and campaigns: “Verify selected” in the table, “Verify” on the card, “Verify audience” on the campaign page. Invalid addresses are skipped automatically when sending.
  4. API (Business): create a key in Settings → API keys, send it in x-api-key. POST /api/v1/verify, /verify/bulk, GET /verify/jobs/{id}, POST /find (name + domain), GET /credits. 120 requests a minute, 5 parallel jobs.
  5. Node.js SDK and MCP server: open-source clients for this API on GitHub (links below) that install straight from there. AI agents with MCP support can also connect to https://coldleads.app/api/mcp with the same secret key (Authorization: Bearer).
Open
Sending from your own mailbox
  1. Settings → Sending e-mails. Choose how campaign e-mails are sent: from Cold Leads (default), your SMTP server, Gmail, Microsoft 365 or your own domain.
  2. SMTP: enter host, port, login, password and the From address, press “Send test e-mail” — a test lands in your inbox — then Save. Passwords are stored encrypted.
  3. Gmail / Microsoft 365: press Connect, sign in and allow sending; e-mails go out through your account and appear in Sent.
  4. Own domain: enter the domain, add the DNS records shown, press Verify. Mind your provider’s daily limits (e.g. Gmail 500/day) and set the daily limit in Settings accordingly.
  5. Deliverability check: on the same tab press Check now — it reads the SPF, DKIM, DMARC and MX records of your sending domain and shows the exact record to add when something is missing. Do this before the first campaign; Gmail and Outlook require SPF and DKIM, and DMARC for larger volumes.
Open
Capturing clients from your website
  1. Settings → API keys → Create (one key per site or button).
  2. Copy the HTML form example and paste it on your site, or POST to /api/hooks/lead with the key in x-api-key.
  3. Fields: email (required), name, phone, company, message, tag; source=magnet marks a lead-magnet download; redirect sends the visitor on after submit.
  4. Every submission appears in Contacts instantly with the stage “subscriber”. Bots are filtered by the hidden website field.
Open
Importing contacts
  1. Contacts → Import contacts.
  2. Paste CSV lines “email;name;company;type;language” or choose a file. Duplicates by e-mail are skipped automatically.
  3. Pick the consent basis (inquiry or B2B outreach) — it is stored with each contact.
  4. Leave “Verify addresses after import” on — new contacts are checked right away (1 credit each) and get a Valid / Risky / Invalid badge in the table.
  5. On Team, paste any text (signatures, a web page, notes) into AI import and it extracts the contacts for you.
Open
Writing a template
  1. Templates → New template. Subject and body support Markdown and the variables {name}, {company}, {email}.
  2. The design section lets this template use its own style, accent colour, logo, header image, fonts, website, footer, attachments and even a full HTML layout; empty fields inherit Settings → Branding.
  3. The signature and the unsubscribe line are added to every e-mail automatically.
  4. For AI generation pick the tone — friendly, professional or short and direct; the business description from Settings is used as context and every draft ends with a call to action.
  5. On Solo you can generate 5 templates per month with AI; on Team AI is unlimited.
Open
Running a campaign safely
  1. Campaigns → New campaign → choose the template.
  2. Narrow the audience by list, type, consent, stage or tag. Contacts that already received this template are excluded automatically.
  3. Set the daily limit, optionally spread sending over a time window (random human-like intervals) and pick the stage to move contacts to after sending.
  4. The dry-run shows exactly who will receive the e-mail. Launch starts sending; it continues in the background even if you close the tab.
  5. Before launch press “Verify audience”: unverified addresses are checked, and Invalid ones are skipped automatically so your domain stays clean. The table also shows “Last outreach” and “Verified” per contact.
Open
Funnel stages and lists
  1. Every contact has a stage: cold → subscriber → lead → customer → regular.
  2. Change it manually on the contact card, automatically after a campaign, or from your systems via POST /api/hooks/stage.
  3. Lists belong to contacts only. Manage them with the gear next to “Lists” in the sidebar or “+ New list”; Contacts, Campaigns and Inbox can be filtered by list.
  4. Tags are free-form labels — click a tag to filter contacts by it.
Open
Team and roles
  1. Settings → Team → enter the agent’s e-mail and role → Add agent. Solo includes 1 seat, Team 4, Business 10.
  2. Admin: billing, agents, limits, settings and API keys. Agent: contacts, imports, templates, campaigns, sending, AI. Support: view only.
  3. Per agent you can cap e-mails per day and switch AI on or off.
  4. The agent signs in with Google or an e-mail link using that address and lands in your account.
Open
Plans and billing
  1. Settings → Current plan shows the plan, renewal date, usage limits and credits.
  2. Change plan → pick Solo, Team or Business and monthly or annual billing → Apply. Changes take effect immediately: moving up, your first payment is reduced by the unused days and credits of the current plan; moving down, unused verification and AI credits are added to the new plan automatically and the lower price applies from the next payment (no automatic refund — write to support@coldleads.app for one).
  3. Update card details opens the card form in the Stripe portal and returns you to Settings; invoices are e-mailed as receipts after every payment.
  4. Cancel subscription: you get a one-time offer to stay with 20% off for 3 months; “Cancel anyway” keeps full access until the end of the paid period, then the workspace becomes read-only (data and export stay available). Resume undoes a pending cancellation.
  5. Verification credits: the plan allowance renews monthly (Solo 100, Team 1 000, Business 10 000); the Current plan card shows usage and lets you buy extra packs of 1 000.
  6. Business includes 24/7 premium support. Need exceptional or individual service? Write to support@coldleads.app.
  7. Launch setup assistance: every registered customer can request a free setup call via support@coldleads.app — we connect capture, build the first list and launch the first campaign together.
Open
Fonts, logo and your own HTML layout
  1. Settings → Branding: upload a PNG/JPG logo (up to 1.5 MB) or paste an image URL; add a header image to show full-width above the text.
  2. Fonts: pick a Google Font for headings, content and footer, or press “Upload font file” (WOFF2/WOFF/TTF/OTF, up to 2 MB) — the family name comes from the file name and appears under “Your fonts”. The subject line cannot be styled; Gmail and Outlook show the closest system font instead of web fonts.
  3. Own HTML layout: paste or import a complete HTML e-mail; set the style to “Own HTML layout”. Placeholders: {{body}}, {{subject}}, {{logo}}, {{hero}}, {{footer}}, {{unsubscribe}}, {{name}}, {{company}} and more (listed under the field). Without {{body}} the text is appended; the unsubscribe line is always added.
  4. Per template: the same fields exist under Design of this template; empty fields inherit Settings. Brand files (logos, images, fonts, attachments) are listed in Settings with a copy-link button for use inside your HTML.
Open
Attachments in templates and chat
  1. Template editor → Attachments → Upload (up to 3 MB per e-mail). The files go out with every e-mail of that template in campaigns; remove a file with ✕.
  2. Chat: press “Attach files” under the reply, pick one or more files, send. Sent files show as chips in the message; the recipient gets them as regular e-mail attachments.
  3. Replies from clients that arrive through the Cold Leads reply address keep their attachments — download them from the thread.
  4. Executable files (.exe, .js, .bat …) are refused; all files count toward the 40 MB per-account storage listed in Settings → Brand files.
Open
Chatting with a contact
  1. Open the chat from the contact card (“Open chat”) or by clicking a row in Inbox — it opens as a side panel over the page; on a computer drag its left edge to make it wider.
  2. The subject is editable above the reply box; the default is “Re:” + the last subject of the thread. “Expand editor” makes the reply box take most of the panel.
  3. Attach files, use “AI reply draft” for a first version, press Send e-mail. Replies are sent through the mailbox chosen in Settings → Sending e-mails.
  4. The delete icon on a message removes it from the CRM chat only (the e-mail already sent to the client is unaffected).
Open
Campaign details and archive
  1. Campaigns has two tabs: Active (drafts, running and finished) and Archive. Finished campaigns can be moved to the archive from the list row or the campaign page (“Move to archive”); “Restore from archive” brings them back. A running campaign cannot be archived.
  2. The campaign page starts with Campaign details: template, status, created/started dates, audience lists, filters, limits, send window and the stage contacts move to after sending.
  3. “Sent to” lists every recipient with status (sent / failed) and time, linked to the contact; “Still to send” shows who is left. Finished campaigns also show the Content preview that was sent.
Open
Manage contacts and outreach with MCP and the SDK
  1. Connect an MCP client to https://coldleads.app/api/mcp using ChatGPT OAuth or a secret API key from Settings → API keys (Business plan). The Node SDK uses the same hosted tools via `new ColdLeads({ apiKey }).crm`.
  2. Use list_contacts and import_contacts to work with records in your workspace. For CSV/XLSX, let the assistant parse the uploaded file and pass structured rows (up to 100 per call). Imports deduplicate, skip global do-not-contact addresses, and never send mail. Use `consent: inquiry` for website leads; use `b2b_outreach` only when you have a lawful basis.
  3. Use update_contact to edit fields or record an opt-out; opt-out cannot be reversed through MCP. Use get_conversation to read messages already synced from your connected mailbox. send_contact_message sends one message only when the user approved the recipient and final content and the tool receives `confirm_send: true`.
  4. Use list_templates and save_template to prepare content; list_campaigns and create_campaign_draft create drafts with recipient estimates. Review the template and audience in Cold Leads, then have the user explicitly approve launch_campaign with `confirm_launch: true`. Acceptable-use and content checks, account limits, DNC and unsubscribe safeguards apply.
  5. Use get_workspace_info for non-secret account and mailbox status. setup_website_lead_capture creates a public-only `lk_…` key and a form snippet for /api/hooks/lead. Keep this key in the website form only; submissions are stored as inquiry leads and are not automatically eligible for cold outreach.
  6. SDK examples: `await coldleads.crm.importContacts({ contacts: [{ email: 'person@example.com', consent: 'inquiry' }] })`; `await coldleads.crm.setupWebsiteLeadCapture({ site: 'https://example.com' })`; `await coldleads.crm.createCampaignDraft({ name: 'Welcome', templateId, consent: 'inquiry' })`. See the SDK guide on GitHub for all methods.
Open

FAQ

What happens when the free trial ends?

Your chosen plan starts automatically on the day the 5-day trial ends and the card on file is charged; we e-mail you before that. Cancel in Settings before the end date and nothing is charged.

Is a card required for the trial, and can I cancel any time?

Yes, a card is required to start the trial — it keeps the service free of abuse. You can cancel or change your plan at any time in Settings; access stays until the end of the paid period.

What is one contact, and what is a campaign recipient?

A contact is one record in your CRM. A campaign recipient is one contact reached by one campaign — Solo keeps 200 contacts and each of its 5 campaigns can reach 50 of them, so a contact may receive several e-mails over time.

What uses a verification credit?

One credit checks one e-mail address (syntax, disposable domains, role accounts and MX records; the result says whether the mailbox itself was checked) — from the app or the API; checking the same address again also costs a credit. Verified does not mean consented: you remain responsible for having a lawful basis to contact each person.

How many mailboxes and users can I have?

One sending mailbox per workspace on every plan (Gmail, Microsoft 365 or SMTP). Solo has 1 agent, Team up to 4, Business up to 10.

Do unused contacts or credits roll over, and what if I exceed a limit?

Contacts are a storage limit, not a monthly quota. Verification credits renew monthly and do not roll over; extra packs of 1 000 can be bought at any time. When a limit is reached the app tells you and offers an upgrade — nothing is deleted.

Can I import my own list, and does Cold Leads warm up my inbox?

Yes: import CSV, paste any text for AI extraction, or capture leads from your website. Cold Leads sends from your own mailbox with a daily limit you control; it does not run inbox warm-up, so start with small volumes and grow gradually.

Is onboarding help included?

Yes. Every registered customer can request free launch-setup assistance via support — one call where we connect your website capture, build the first list and launch your first campaign together. Business plans also get 24/7 premium support.

How does verification work without touching my domain?

All checks run from Cold Leads' servers, never from your domain: syntax, a disposable-domain list, role accounts and an MX lookup. The mailbox check is an SMTP handshake (MAIL FROM / RCPT TO without sending) plus a made-up address that reveals accept-all servers; it runs only when our server can open an SMTP connection to the recipient's mail server. When it cannot, the result says “domain accepts mail, mailbox not checked”. Results are cached for 30 days.

How do client replies get into the chat?

If you send from Gmail, Microsoft 365 or SMTP+IMAP, Cold Leads reads replies from your inbox every few minutes (or on “Sync now”) and matches them to contacts by sender address. If e-mails go out from Cold Leads servers, replies arrive at a dedicated reply address, land in the chat and a copy is forwarded to your reply-to mailbox. The first reply moves the contact to the “lead” stage.

Can I send campaigns from my own e-mail address?

Yes — Settings → Sending e-mails: connect Gmail or Microsoft 365 with one click, enter your SMTP server, or verify your own domain. Replies then arrive in your own inbox. Until you choose, e-mails are sent from Cold Leads with your reply-to address.

My campaign is not sending — why?

Check that the daily limit is not reached (campaign and Settings), that the audience is not empty in the dry-run, and that the campaign status is “Sending”. Spread campaigns send one e-mail at a time with pauses — this is expected.

Can a contact receive the same e-mail twice?

No. Each template is sent to an address once; contacts that already received it are excluded from the audience automatically.

What is a dry-run?

A preview of the exact recipient list and e-mail before launching. Nothing is sent until you press Launch.

How does unsubscribe work?

Every e-mail ends with an unsubscribe line. Opted-out contacts are never e-mailed again, even if they are in the audience.

Why can I not use AI?

AI campaign autopilot and AI import are Team features. On Solo you get 5 AI templates per month; the counter is in Settings → Current plan. Admins can also switch AI off per agent.

How do I change or cancel my plan?

Settings → Current plan: Change plan (applies immediately: upgrades credit unused days to the first payment, downgrades carry unused credits over and the lower price starts at the next payment; refunds only on request), Update card details, Cancel subscription. Cancelling offers a one-time 20% discount for 3 months; a cancelled plan keeps full access until the end of the paid period, and Resume undoes it before then.

Which languages are supported?

The interface and templates are available in English, Ukrainian, Czech, German and Spanish; the language dropdown is at the bottom of Settings (and in the landing-page footer).

Where are Settings and sign-out?

In the profile chip in the top-right corner: Settings, password and Sign out. On phones open the menu button in the top box — navigation, lists and the profile are there.

How is my data protected?

Data lives in a Postgres database in the EU, isolated per account, with daily backups; payments are processed by Stripe and we never see card numbers. Settings → Your data lets you export everything (JSON, CSV) or delete the workspace yourself.

Can I use my own font or HTML template?

Yes. Settings → Branding (or Design of this template): choose a Google Font or upload a WOFF2/TTF/OTF file for headings, text and footer; upload a logo and a header image; or import a complete HTML e-mail as your layout with placeholders such as {{body}} and {{footer}}. Note that e-mail subjects cannot be styled and Gmail/Outlook replace web fonts with a system font.

Can I send attachments?

Yes — up to 3 MB per e-mail. Add files to a template (sent with every campaign e-mail) or attach them in the chat reply. Incoming replies keep their attachments in the thread.

Where did a finished campaign go?

Check the Archive tab in Campaigns — finished campaigns can be moved there and restored at any time. The campaign page keeps every recipient, status, time and the content that was sent.