How Anonymous Voice Chat Actually Works
What really happens when you tap to talk to a stranger: WebRTC, peer-to-peer audio, and what a signalling server can and cannot see.
"Anonymous" and "not recorded" are easy claims to make and hard for a user to verify. This post explains the actual machinery underneath a random voice chat, so you can judge those claims on architecture rather than on trust โ including the parts that are genuinely limitations.
The problem being solved
Two browsers, on two unknown networks, somewhere on Earth. Neither knows the other exists. Both are probably behind a home router doing network address translation, which means neither has an address the other can reach directly. They need to end up exchanging live audio with a delay short enough to hold a conversation โ under about 200 milliseconds before people start talking over each other.
WebRTC is the browser standard built for exactly this, and it is why modern voice chat needs no plugin, no download and no app.
Step 1: the signalling server introduces you
When you tap to talk, your browser connects to a signalling server โ in TalkLive's case over a WebSocket. Its entire job is matchmaking and introduction: it holds the queue of people waiting, picks a partner, and passes a small amount of connection metadata between the two browsers.
That metadata is an SDP offer and answer (essentially "here is the audio format I speak and the encryption key material I will use") plus ICE candidates (a list of network paths where I might be reachable). The signalling server does not carry audio and does not need to understand any of it. It is a switchboard operator who connects the line and hangs up.
Step 2: NAT traversal, or how two routers shake hands
Both browsers are behind routers that block unsolicited inbound traffic. To get around this, each asks a STUN server a simple question: "what public address and port do I appear to be coming from?" The answer becomes an ICE candidate, which is passed to the other side via the signalling server.
Both ends then try every candidate pair simultaneously until something connects โ a process called ICE. Because both sides send outbound packets at roughly the same moment, the routers each see what looks like a reply to an outgoing request and let it through. This works for the large majority of connections.
When it does not โ symmetric NAT, restrictive corporate firewalls, some mobile carriers โ the fallback is a TURN server, which relays the audio. This is the honest asterisk on peer-to-peer: a minority of calls are relayed rather than direct. The relay still cannot read the audio, because encryption is negotiated end-to-end between the browsers, but the packets do pass through it.
Step 3: encrypted audio, browser to browser
Once a path exists, audio flows as SRTP โ Secure Real-time Transport Protocol โ with keys established by DTLS directly between the two browsers. Encryption is not optional in WebRTC; there is no unencrypted mode to fall back to.
The audio itself is typically Opus, a codec designed for speech that adapts its bitrate to the connection. It sounds good at around 24 kbit/s and stays intelligible far below that, which is why voice chat holds up on a mobile connection that would make video unusable.
What "not recorded" means, precisely
In this design, the server never receives decodable audio. On a direct connection it receives no audio at all, and on a TURN-relayed connection it receives encrypted packets it has no key for. There is no point in the pipeline where a recording could be made server-side, which is a stronger statement than a policy promise โ it is a property of the architecture.
What it does not mean: it does not mean the person you are talking to cannot record you. They are an endpoint, they have the decrypted audio by definition, and any phone can run a recorder. No protocol can prevent this, on any platform. Treat every conversation with a stranger as potentially recorded by the other party, because it is.
What the server does know
Being precise about this matters more than being reassuring. A signalling server necessarily sees your IP address โ every internet service does, and it is required to route the connection. It knows the timing of your connections, and it holds whatever temporary session identifier represents you in the queue.
This is also what makes moderation possible: a device and IP ban has to be based on something. There is a real, unavoidable trade-off between perfect anonymity and being able to remove people who abuse the platform. Any service claiming both without qualification is overselling.
What a well-built service should not have: your name, email, phone number, an account you were forced to create, or the contents of your conversations.
Why the same design does not work for video
Peer-to-peer scales beautifully for two-person audio and poorly for large-scale video. Video is roughly two orders of magnitude more bandwidth, needs adaptive quality layers, and in practice usually gets routed through a selective forwarding unit โ a server in the middle handling streams.
Once a server is decoding and forwarding your video, the privacy story changes fundamentally, and so does the cost structure. That is a large part of why video roulette platforms tend to meter features and sell subscriptions, while voice-only platforms can afford to give matching away.
How to check any platform's claims
You do not have to take a marketing page at its word. Open your browser's WebRTC internals page โ chrome://webrtc-internals in Chromium browsers โ during a call, and you can see the actual ICE candidate pair in use, whether the connection is direct or relayed, the codec, and the bitrate.
Also watch the permission prompts. A voice-only platform should request the microphone and nothing else. If a site asks for camera access while claiming to be audio-only, that answers the question by itself.