Skip to content

Persona

ContactCTL for agencies

Client lists arrive as CSVs in every imaginable shape. ContactCTL turns each one into a clean, verified deliverable — with a cost estimate you can quote before you run, and a hard cap so a messy file can never blow the budget.

01 — The problem

Every client is a new data stack

Agencies do not have one enrichment workflow; they have one per client. Different CRMs, different column names, different volumes, different deadlines. Seat-priced enrichment tools punish exactly that: every client becomes another workspace, another license, another export queue.

ContactCTL treats clients as folders. Each engagement is a CSV in, a command, and a CSV out — scriptable per client, schedulable per retainer, and billable per credit. --estimate prices a file before you commit, which means you can quote enrichment as a line item with real numbers.

Batch runs are chunked and resumable: if a 5,000-row job outlives your terminal, the run-id reattaches to it without re-billing a single row.

02 — The workflow

How it runs

A per-client batch flow

Estimate first, quote the client, run with a cap, verify the output. Four commands per engagement.

On the Scale plan (€250/mo, 5,000 credits) top-ups cost €0.050/credit, and unused top-up credits never expire while you stay subscribed — quiet months do not waste spend.

clients/acme — engagement
# 1. price the file (no spend, computed locally)
ctc find clients/acme/leads.csv out.csv --estimate

# 2. run with a hard cap once the client approves
ctc find clients/acme/leads.csv clients/acme/enriched.csv --max-cost 300

# 3. verify everything before handoff
ctc verify clients/acme/enriched.csv clients/acme/deliverable.csv

# 4. attach the spend report
ctc usage --json > clients/acme/usage.json

03 — Commands and credits

What this workflow uses

Every command reports its credit cost in the output. Preview any spend with --estimate at zero cost.

CommandPurposeCredits
ctc find <in.csv> <out.csv> --estimateQuote a file before runningfree
ctc find <in.csv> <out.csv> --max-cost NCapped batch enrichment1 credit per row found
ctc verify <in.csv> <out.csv>Deliverability pass before handoff0.02 credits per row
ctc find --run-id <id>Reattach to a long batch runno re-billing

Full datasheet: credit costs in the docs · plan pricing on /pricing