bitchat: the messaging app that works without internet, without servers and without a phone number

Born as a weekend experiment by Jack Dorsey and today maintained by the permissionlesstech collective, bitchat creates mesh networks via Bluetooth between nearby phones: messages jump from device to device, encrypted, even if there is no network.

bitchat — decentralized messaging app using Bluetooth mesh that works without internet, without servers and without a phone number
bitchat forms ad-hoc networks with the phones present: each device is a client and server at the same time. Source: bitchat.free

What happens to your messages when the internet goes down, the operator turns off the network or there is simply no coverage? For bitchat, nothing: the app turns nearby phones into a mesh network via Bluetooth where each device acts as both client and server, discovers its neighbors automatically and relays messages from others up to 7 hops to extend the range. No accounts, no phone numbers, and no single piece of centralized infrastructure that can be monitored, censored, or shut down.

What is bitchat and where does it come from

bitchat was born in July 2025 as a weekend experiment by Jack Dorsey, co-founder of Twitter, who described it as a test of "Bluetooth mesh networks, relays, store and forward models and message encryption," according to TechCrunch. The TestFlight beta sold out its 10,000 seats in hours. Today the project lives under the umbrella of permissionlesstech, with a stable version in the App Store (bitchat mesh), an Android client with full protocol compatibility and all the code released to the public domain in GitHub.

The idea is not new—FireChat and Bridgefy were already used in the Hong Kong protests precisely because the authorities could not block them by cutting off the internet, reminds The Verge—but bitchat takes it further: it is open source, does not depend on any company and its technical whitepaper (version 2.0, July 2026) documents each piece of the protocol as it is implemented.

Video: key bitchat features explained

Video review of bitchat p2p messaging: without internet, encrypted and open source. Source: YouTube

How the Bluetooth mesh works

Each phone with bitchat acts simultaneously as a Bluetooth Low Energy transmitter and repeater. Messages exit with a 7-hop life counter and propagate in a “controlled flood”: each device forwards them to its neighbors, discards duplicates, and adjusts forwarding depending on how dense the network around it is. In a crowd—a festival, a demonstration, a neighborhood during a blackout—that means your message can reach someone hundreds of feet away by bouncing off the phones in between.

The cleverest part is what happens when the recipient is not around. The protocol stacks four store and forward mechanisms: an outbox that retries upon reconnection; «human couriers» (couriers) who carry the sealed and encrypted message on them while they move around the city, distributing copies among other carriers with a limited budget (spray and wait); a public room history that devices sync with each other for 6 hours; and mailboxes in Nostr relays for when one of the parties touches the internet. Carriers only see encrypted text: they do not know who is sending, who is receiving, or what the message says.

Bitchat architecture: Bluetooth mesh transport without internet and Nostr transport over the internet, with geohash channels
The two transports of bitchat: local Bluetooth mesh without internet and geohash channels over Nostr relays. Source: Whitepaper bitchat v2.0

The second transport: Nostr and channels by zone

Since 2025 bitchat is a double transport app. When there is Internet, private messages to favorite contacts travel through the Nostr protocol through more than 290 relays distributed around the world, wrapped with NIP-17 (gift wrap): not even the relays know who is sending or what the message contains. The router in the app always prefers Bluetooth if there is a direct link and falls to Nostr as an automatic backup.

The location channels also operate on Nostr: public rooms linked to geohash coordinates, from the block level (block #dr5rsj7) to the country level. They are neighborhood, city or regional chats that you enter without registering, with an ephemeral and different cryptographic identity per area so that no one can correlate your activity between places.

Channel types in bitchat

Channel Transportation Internet? What is it for
mesh #bluetooth Bluetooth LE (multi-hop) No Local chat without network: blackouts, protests, festivals, remote areas
block #dr5rsj7 Nostr (7-character geohash) Yes A block-level conversation
neighborhood #dr5rs Nostr (geohash of 6) Yes Neighborhood or district chat
city / province Nostr (5/4 geohash) Yes City or provincial rooms: local events and notices
region #dr Nostr (geohash of 2) Yes Discussion at country or large region level
Private messages Bluetooth first, Nostr backup Optional End-to-end encrypted 1-to-1 chats, with smart queue if no route

Channel scales based on geohash precision; The mesh channel is the only one that does not require any connection. Source: GitHub — bitchat README

Encryption, panic wipe and limits

Private chats in the mesh use the Noise XX pattern (Curve25519, ChaCha20-Poly1305, SHA-256) with mutual authentication and forward secrecy; Intermediate nodes only report opaque and padded packets to uniform sizes to make traffic analysis difficult. There are no persistent identifiers: in the mesh you appear under ephemeral IDs per session, and a triple tap on the logo activates the panic wipe, which instantly deletes passwords, favorites, ported email and all history. Nothing is ever written to disk in clear text.

It is important to know the limits. The whitepaper itself admits that courier-sealed mail does not have forward secrecy yet, and Bluetooth proximity is observable by nature, although ephemeral IDs and daily rotating labels limit tracking. Furthermore, in its first weeks of life, researchers reported vulnerabilities that the project was patching in the open. The house editorial rule applies here too: for real risk communication, treat it as what it is — an evolving experiment, not an absolute guarantee.

How to install it on iOS and Android

On iPhone and Mac, search for bitchat mesh in the App Store (requires iOS 16 or macOS 13). On Android it is in the Play Store and you can also download the APK directly from GitHub (Android 8.0 onwards) — useful just in scenarios where official stores are not available. It does not ask for email, number, or location permission for the mesh: you choose a nickname and you are already inside the local channel mesh #bluetooth, with IRC-style commands such as /msg or /who.

What would you want it for? The use cases explain themselves: concerts and stadiums with saturated networks, hiking without coverage, natural disasters, and—the most serious—countries where internet blackout is a control tool. A network that only needs phones on the street is, by design, very difficult to turn off.

Infographic: how bitchat works, messaging without internet — messages jump from phone to phone via Bluetooth, zero servers, zero phone numbers, 300 meters range with relays and end-to-end encryption
How bitchat works in three steps, with its key figures: zero servers, up to 7 hops per message and end-to-end encryption. Source: MARGENEZ infographic with data from bitchat.free, the protocol whitepaper, TechCrunch and The Verge