Trust · Calling rules
Data, consent and calling rules
callerlab places real phone calls with a synthetic voice. The harness enforces the mechanics: allowlist, denylist and dry runs by default. Getting legal consent is still your job. This page restates docs/SAFETY.md and is not legal advice.
Calling rules
Five rules. The harness enforces the allowlist and denylist; the rest are yours to follow. Copy them into your project’s README.
- Enforced by the harness
Live dials go only to allowlisted numbers
- Yours to follow
Get prior express consent (FCC 24-17: AI voices are “artificial”)
- Yours to follow
Get recording consent when recording a call
- Yours to follow
Escalation and transfer techniques are test-target only
- Enforced by the harness
Denylist always wins
Consent matrix
Pick what applies to your plan to see what must be true before you add --yes. A summary of the rules above, not a substitute for counsel.
Highlighted: Always.
| Requirement | Always | Person may answer | Escalation | Heated | |
|---|---|---|---|---|---|
| Destination on allowlist | Required for live | Required | Required | Required | |
| Prior express consent (TCPA / FCC 24-17) | You confirm you have it (rule 02) | Stronger: named party consent | Named party consent | Named party consent | |
| Recording consent (when recording, where required) | Get consent where required, or hang up on a person | Written consent first if recording | Written consent first if recording | Written consent first if recording | |
| Synthetic-caller disclosure | Where required | Disclose or stop if a human answers | Disclose or stop | Disclose or stop | |
| Escalation targets are test lines | Not required | Not required | Required | Not required | Not needed for: Always, Person may answer, Heated |
--allow-profanity | Not required | Not required | Not required | Required for Heated | Not needed for: Always, Person may answer, Escalation |
| Engagement transfers approval | Not required | Not required | For Pushy (L3) and above, in client work | For Pushy (L3) and above, in client work | Not needed for: Always, Person may answer |
Where data goes
Self-install sends no telemetry to callerlab and never routes through a callerlab server.
Your machine
.env keys.cache/ runs & recordingsUnencrypted, like any dev tool
Twilio
Call audio & SIDYour accountNo provider recording
Caller / judge model
Transcripts & goalsNumbers as heardMasking does not change this
TTS / STT
Lines you send, audio to transcribeDefault voice: Microsoft Edge, online, no keyOther providers: your keys
Hosted (planned)
Only if you choose itRuns, reports, ledger, encryptedcallerlab-provided line and models
Masking
- Reports, summary.json, junit.xml, terminal and dashboard mask phone numbers
--unmaskchanges only written and printed output, never what a provider receives- Keyed PINs are blanked in rendered reports and text downloads; raw local run files may retain them
- Audio is not redacted
- Numbers spoken as words are never masked
exploreprints your--goalas you typed it, and the dashboard shows a report stored with--unmaskunmasked
Retention
- Local: no default retention period or delete command yet
- voicebench run logs (LLM, TTS, STT): not published
Corrections and this website
Corrections and right of reply
How errors on the benchmark get fixed, and who sees results first.
- Verified factual errors anywhere on the benchmark are corrected and logged
- Conflicts are disclosed in the benchmark methodology. No result is ever a paid placement.
This website
What callerlab.ai itself collects, separate from the CLI.
- No analytics, no tracking and no cookies
- Two preferences stay in your browser’s local storage and are never sent: that the fonts have loaded, and your pause-motion choice if you make one
- Every font and script is served from this site; nothing loads from a third party
- The waitlist form sends your email address. The inquiry form sends your name, email, company, topic and its label, message and whether you ticked its consent box. Each also names the form.
- Where a connected form’s submissions are stored, and for how long, is not described here yet
- Our host, Vercel, keeps standard request logs
Test your agent, by these rules
Start with a dry run: it prints the plan and its price and dials nothing.