What it does
AgentSDR is an open-source (MIT), self-hosted AI sales development tool. It runs outbound campaigns on email (from your own Google Workspace mailboxes), LinkedIn and WhatsApp, and routes every reply into one AI CRM inbox. There, your chosen model classifies each reply and drafts an answer from your knowledge base. A person approves drafts before they are sent. You run it on your own server with Postgres, and every AI step runs on your own OpenRouter key.
Official source 1 ↗ · Official source 2 ↗Features
- Email sequences from Google Workspace. Multi-step email from your own Google Workspace mailboxes. Any CSV column works as a merge field, with spin text, a daily cap and sending window per mailbox, a shared mailbox pool, one-click unsubscribe and automatic bounce suppression. Official source 1 ↗
- LinkedIn campaigns via Unipile. Runs campaigns across several LinkedIn accounts through Unipile: an invite, an accept message and three follow-ups. Each account has its own daily limits (30 invites on premium, 5 on free by default), randomised gaps and working hours. Official source 1 ↗
- Recorded WhatsApp calls and messages. A Chrome extension places calls inside WhatsApp Web and records both sides to your storage bucket, and your model writes the transcript. Message campaigns use a 24-hour warm-up for new numbers and a cap on new chats per day. Official source 1 ↗
- AI CRM with drafted replies. Replies from every channel arrive in one inbox. The CRM classifies each one (interested, customer, not interested, other), drafts an answer grounded in your knowledge base and holds it for approval. It moves leads forward on its own only when confident. Official source 1 ↗
- Lead database and enrichment tables. One database of people and companies feeds every channel. You import CSV or XLSX files, and duplicates are matched on email or LinkedIn. Table columns can call an API, run a formula, ask your model or pull from Apollo, and a table can become a campaign. Official source 1 ↗
- Bring your own model. Every AI call goes through your OpenRouter key, pinned to the provider you chose with fallbacks turned off. This covers classification, reply drafts, transcription and AI table columns. Official source 1 ↗
- Analytics by channel. Shows replies, positive replies, meetings and customers by channel, plus a conversion funnel and AI-assistant stats such as drafts sent and override rate. Opens and clicks are not tracked. Official source 1 ↗
- Teams and multiple organizations. Each teammate signs in with their own account and has an owner, admin or member role. One deployment can host several fully separate organizations, which suits agencies running outreach for clients. Official source 1 ↗
Pricing & free limits
The full app with no seat, sender or contact fees. You pay separately for your server, Google Workspace, Unipile, your OpenRouter AI usage and any optional enrichment providers. Official source 1 ↗ · Official source 2 ↗
Billing details
Each organization connects its own accounts and keys inside the app (Google Workspace, Unipile, Cloudflare R2, OpenRouter, enrichment providers), so third-party usage is billed by those providers directly. Official source 1 ↗
Free access & limits
Free access and its limits were not established by the checked official sources.
Best for & limitations
Founder-led outbound without hiring an SDR team or paying for several separate tools. Official source 1 ↗
Agencies running outreach for several clients, each as a separate organization on one deployment. Official source 1 ↗
Revenue teams that need leads, conversations and call recordings to stay in their own Postgres database and storage bucket. Official source 1 ↗
Moving off a hosted sequencer such as lemlist by exporting leads as CSV and rebuilding the sequences by hand. Official source 1 ↗
- Self-hosting required. There is no hosted version. You need a server and someone to keep it updated. Official source 1 ↗
- Google Workspace only for email. Email sends only from Google Workspace mailboxes connected through a service account. Other providers aren't supported yet. Official source 1 ↗
- No contact database or warm-up. AgentSDR has no built-in contact database, so you bring your own lists or pay an enrichment provider. It also doesn't warm up mailboxes. Official source 1 ↗
- One channel per campaign. A sequence can't mix email and LinkedIn steps. Campaigns are linked only through the person: a reply on any channel stops that person's other campaigns. Official source 1 ↗
- LinkedIn restriction risk. Automating LinkedIn can get accounts restricted. The site says no tool can promise otherwise and relies on conservative limits and pacing. Official source 1 ↗
- WhatsApp calling depends on WhatsApp Web. Calling runs through a Chrome extension inside WhatsApp Web, depends on its English interface, and uses Unipile. Official source 1 ↗
- Cold-outreach compliance is on you. AgentSDR is built for cold email and LinkedIn and WhatsApp prospecting. It honours Do Not Contact lists and includes unsubscribe links, but consent and anti-spam compliance remain the operator's responsibility. Official source 1 ↗