| name | apollo-cost-tuning |
| description | Optimize Apollo.io costs and credit usage.
Use when managing Apollo credits, reducing API costs,
or optimizing subscription usage.
Trigger with phrases like "apollo cost", "apollo credits",
"apollo billing", "reduce apollo costs", "apollo usage".
|
| allowed-tools | Read, Write, Edit, Bash(gh:*), Bash(curl:*) |
| version | 1.13.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","apollo","api","cost-optimization"] |
| compatibility | Designed for Claude Code, also compatible with Codex and OpenClaw |
Apollo Cost Tuning
Overview
Optimize Apollo.io API costs through credit-aware enrichment. Key cost model: search is free, enrichment costs credits. Apollo charges per unique contact/company lookup. Credits do not roll over. Strategies: deduplicate before enriching, score leads before spending credits, and track daily budget.
Prerequisites
- Valid Apollo API key
- Node.js 18+
Instructions
Step 1: Understand Apollo's Credit Model
Action | Credits | Notes
----------------------------+---------+-----------------------------------
People Search | 0 | /mixed_people/api_search (free!)
Organization Search | 0 | /mixed_companies/search (free!)
People Enrichment (single) | 1 | /people/match
People Enrichment (bulk) | 1/match | /people/bulk_match (up to 10/call)
Organization Enrichment | 1 | /organizations/enrich
Reveal Personal Email | +1 | reveal_personal_emails param
Reveal Phone Number | +1 | reveal_phone_number param
Plans (approximate):
- Free: 50 credits/month
- Basic: 1,200 credits/month (~$0.04/credit)
- Professional: 6,000 credits/month
- Organization: 12,000+ credits/month
Step 2: Track Credit Usage
class CreditTracker {
private daily: Map<string, number> = new Map();
private readonly budget: number;
constructor(dailyBudget: number = 200) {
this.budget = dailyBudget;
}
record(count: number = ) {
today = ().().()[];
..(today, (..(today) ?? ) + count);
}
(): {
today = ().().()[];
..(today) ?? ;
}
(): {
.() >= .;
}
(): {
used = .();
;
}
}
creditTracker = (
(process.. ?? , ),
);