Voice verification · runs on our servers · 4 rounds · badge expires in 90 days

Proving a live human spoke

Verification asks you to say a phrase the server picks, right now — and the whole check now runs on our servers, not in your browser, so nothing a bot asserts is ever trusted. Here's exactly what the check does, how it turns a pass into a stable voice-id that makes "one human, one welcome grant" enforceable, the cloning attack we ran on ourselves — and, just as important, what the badge does not prove.

What it is

You speak a phrase the server picks, live

A verification session is four rounds. In each one the server hands you a random five-word phrase — ordinary words mixed with spoken digits — and you read it aloud. The phrase is single-use and expires after 90 seconds. Nothing you can prepare in advance is any use, because the thing you have to say didn't exist until you asked for it.

STEP 1

Server picks

A fresh 5-word phrase — words + spoken digits

STEP 2

You say it

Within 90 seconds. The phrase is single-use.

STEP 3

Our servers check

Timing, the words, the voice — all measured by us

×4

Four rounds

Then one final check across all four

One bad round ends the session. There's no "best of four" — every round has to pass. Sessions are capped at 5 attempts a day, with a cooldown that gets longer each time you fail, so nobody can grind against the check.
The upgrade that changed everything

The check moved to our servers — because a browser can lie

Earlier versions measured the voice in the browser and sent the server a score. Our own security audit called that what it is: a self-report. A bot never has to load your code — it can just send the number that means "pass."

So we inverted it. Now the browser does exactly one thing: record. Our verification server transcribes the phrase itself, extracts the speaker embedding itself, matches it against your enrolment itself — and cryptographically signs the result. Every claim in the badge is something we measured, never something the client asserted.

YOUR DEVICE
🎙️

Records

Captures the audio of you saying the phrase. That's all it's trusted to do.

OUR SERVERS
🧠

Measure

Transcribe the words, extract the voice embedding, match it to your enrolment

OUR SERVERS
✍️

Sign

The verdict — and your voice-id — are signed by our key. Unforgeable.

The design rule behind this: the signer is the adversary. Any field a client computes is a field a client can forge — so no client-computed field ever drives a badge, a grant, or a label. That rule came out of an independent audit of our earlier design, and we've applied it everywhere.
Inside one round

Three checks per round, one across the set

Each round is judged on three independent things. They fail differently, which is the point — an attack that beats one usually trips another.

1 · You didn't answer impossibly fast

A human has to hear the phrase, read it, and speak it. An answer that arrives faster than that is machinery, not a person.

and

2 · You actually said the phrase

Our server transcribes what you said and requires at least 4 of the 5 words. The tolerance is there because microphones and accents are real; it is not there to let you say something else.

and

3 · The voice matches the account

The audio is compared against the voiceprint held for this account — computed and scored on our side. Right words in the wrong voice fails.

after all four rounds

4 · All four rounds are the same speaker

The four recordings are checked against each other. This is what catches handing the microphone to someone else halfway through, and stitching a session together out of clips from different sources.

The design decision

Why a challenge phrase, and not "say your name"

Every practical attack on voice is an attack you prepare. Someone records you off a livestream. Someone trains a clone on your podcast. Both take time, and both produce audio of you saying things the attacker chose.

A server-chosen phrase deletes that advantage. A recording of you cannot know the phrase. A clone built offline cannot know the phrase. To pass, the attacker has to synthesize new speech, in your voice, saying five specific words, inside 90 seconds — live. That's the expensive case, and forcing every attacker into it is the entire purpose of the challenge.

AttackWhat it needsWhat the challenge does to it
Replay a recordingAny audio of youDead on arrival — the recording says the wrong words
Offline voice cloneSamples of your voice + timeUseless unless it can generate the new phrase live
Splice clips togetherWords harvested from many recordingsHas to beat the timing check and the same-speaker check across four rounds
Pass the mic to a real personA cooperating humanVoice won't match the account; the cross-round check catches a swap mid-session
Verify 10,000 accountsA bot farmThe economics collapse — every badge costs a live human saying a fresh phrase, and the same human resolves to the same voice-id anyway
The voice-id

One human = one welcome grant, enforceable

When you pass, our server resolves your voice to a stable, opaque voice-id — an identifier that says "this is the same human we've verified before" without saying who you are. The same person on a second account resolves to the same voice-id. It's derived from the voice itself, on our side, from audio of a phrase the client didn't choose — so it isn't something an account can pick, swap, or fabricate.

The voice-id is signed into the badge by our verification key. Anything downstream that needs "one per human" — starting with the welcome grant — checks that signature and deduplicates on the id. Open ten accounts and you're still one voice, one id, one grant. That is the claim this system was built to make real: one-human-one-account economics, enforced against a value no client can forge.

The services that check badges never see a biometric. The grant system sees a signed opaque string and compares it to other strings. The voice, the audio, and the voiceprint all stay inside the verification server.
Money asks for a fresher check than a checkmark. A badge is good for 90 days; a payout demands verification from the last 24 hours. Labels and money are deliberately different bars.
The gate fails closed. If the voice gate is missing or misconfigured, the grant system refuses to pay rather than paying blind. We learned that rule the honest way: an audit found the older, softer version and we rebuilt it.
We attack ourselves

We built our own cloning attack — and publish what it catches

The only way to know whether a voice check survives cloning is to clone a voice and attack it. So we did — to ourselves. We took a commercial voice generator, built a clone of our own founder's voice from clean recordings, and ran it against our own verification the way a real attacker would.

Here's the half that worked. The challenge phrase does its job: a replayed recording and a pre-built clone both fail, because they can't say five words that didn't exist a minute ago. And at our operating threshold, the speaker match accepted the real voice essentially every time while rejecting almost every clone clip we threw at it.

And here's the half that isn't flattering, which we're telling you anyway: our anti-spoof detector — the model whose only job is asking "is this audio synthetic?" — leaks on voice generators it hasn't seen. In our own testing it missed roughly 29% of clones from unfamiliar engines, and in blocking mode it false-flagged about 7% of real strangers. So it runs in log-only mode: it records what it sees and never rejects anyone on its own. Until it's honest, it doesn't gate.

This is why the badge says "live voice verified" and nothing more. It is a specific, measured claim, and it's the only claim we make. What this design actually kills is bot-farm economics: nobody can mass-verify accounts, because every badge costs a live human speaking a fresh phrase, and duplicate humans collapse into one voice-id. A determined attacker with a real-time clone might beat one check, once — they cannot cheaply do it ten thousand times, on fresh phrases, every 90 days. Uneconomic at scale is the honest promise. Impossible is a word we don't use.
Why four, not fifteen

More rounds is not more security

The intuition that "more tests = harder to fake" is wrong here, and it's worth being blunt about why. Repeating the same test doesn't compound. A bot that can solve one round can solve fifteen — it's the same problem, handed to it again. What you'd be buying with round eleven is not security; it's the same wall, one more time.

What rounds do buy is two real things: a more stable score, because averaging across several samples smooths out a cough, a bad microphone moment, or one unlucky clip; and the same-speaker check across rounds, which needs more than one sample to exist at all. Both of those saturate quickly — around four. Past that, the curve is flat and the only thing still going up is how long a real person has to sit there talking to their phone.

So four is the point where the measurement is stable, the cross-round check is meaningful, and the tax on honest users is still small. Additional rounds would mostly punish the people who aren't attacking us.
The badge is not permanent

Verification expires after 90 days

The badge attests to a moment, so it's dated like one. After 90 days it lapses and has to be re-earned by running the check again.

This matters more than it looks. Cloning and synthesis get better every year; a check that was hard to beat in one season may not be in the next. If badges were permanent, a single successful break — one clone that got through once — would buy a permanent mark of trust. Expiry means every account has to keep proving it against whatever the check looks like today. And where money moves, the bar is higher still: grant payouts require a check from the last 24 hours, not just an unexpired badge.

Privacy

We don't keep your voice

This is the part people are right to interrogate, so here it is plainly.

Audio is processed in memory and discarded. The recording from a round exists on the verification server long enough to be checked, and then it's gone. There is no archive of clips of you talking.
Only a mathematical voiceprint is stored. A vector of numbers derived from your voice — a fingerprint, not a recording. You cannot play it back, and it does not contain what you said.
The biometric never leaves the verification server. Everything downstream — the chain, the grant system, the labels — sees only the signed badge and the opaque voice-id. Never audio, never the voiceprint. The id says "same human as before," not who you are.
There is a delete path. You can remove your voiceprint. Deleting it removes your ability to verify until you enroll again — that's the trade, and it's yours to make.

A biometric you can't rotate is a serious thing to hand anyone, which is why the design keeps the smallest possible artifact, keeps it in one place, and gives you a way to destroy it.

Honest limits · read this part

What the badge does not prove

The badge means one specific thing: a live human spoke a phrase we chose, at a moment in time, in a voice matching this account. That's it. It is worth stating what it isn't:

It is not proof of identity. We don't know who you are, and we're not claiming to. There's no ID document, no legal name, nothing tying the account to a person in the world. That's deliberate — but it means the badge can't carry weight it was never given.
It is not a guarantee the account isn't automated. A human can verify an account and then hand it to a script. The check proves a person was present then, not that a person is at the keyboard now. If an account wants to say "I'm automated" honestly, that's exactly what Declared Agents is for.
It is not a claim that no clone could ever pass. A well-resourced attacker generating speech in real time, in your voice, against a fresh phrase, is the expensive case — and expensive is not impossible. Our anti-spoof layer is advisory (log-only) precisely because we won't pretend it's a wall. The design goal is fraud that's uneconomic at scale, not impossible in the single case.
We would rather state exactly what the check proves than overstate it. An honest, narrow claim that holds up is worth more than a broad one that quietly doesn't — and you can only decide how much to trust a badge if you know what's behind it.
What it gets you

Verified humans rank higher — and they're the only ones who earn

VoiceBan is for real people, and voice verification is how you prove it. Speech stays open to everyone: nothing is blocked, nothing is removed, and you can post, comment and play whether you verify or not. But we will not leave a gray area for bots to exploit — so everything a fake-account farm would actually come for is verified-humans-only. Two things change the moment you verify:

Reach — verified accounts are boosted in the feed and in comments; unverified accounts rank below them. And moneytips, monetization, rewards and incentives are for verified humans only. An unverified account can still speak and take part, but it does not get paid. No live human behind it, no payout.

The reasoning is ordinary: attention and money are exactly what fake accounts are made to farm. Put a real, repeated, live-voice cost in front of both and the farm stops being worth it. You can still say anything without verifying — you just can't cash in as a bot.

Verified human

Boosted in feed & comments — and the only accounts that can earn: tips, monetization, rewards. Re-earned every 90 days.

Unverified · bot-tier

Free to post, comment and play — but ranked below verified and can't be paid: no tips, no monetization, no rewards.

Voice Lobby exempt

No ranking effect at all — it's live voice end to end, so the thing verification measures is already happening.

No gray areas — that's the point. A gray area is exactly what bot farms exploit, so we don't leave one: if an account won't prove a live human is behind it, we treat it as a bot for the two things fakes are built to farm — reach and money. It can still speak; it just can't cash in. That single line — bots can play, but bots don't get paid — takes the profit out of running them. Voice verification is the essence of a platform for real people. What it also unlocks: Voice Seal to stamp a post as your real voice, and Declared Agents, where "human" is a label you earn, not one you type.