SimpleX: The Messenger Without Accounts

No phone number. No username. No directory. Just a secure connection between two people.

SimpleX: The Messenger Without Accounts

Most messaging apps begin by asking who you are.

A phone number. A username. An account.

SimpleX doesn’t.

A SimpleX invite is just a QR code. No phone number behind it, no username, no account waiting on a server somewhere. You scan it, a connection forms, and that is the entire onboarding story.

Better stewards

I have written about Signal twice on this blog, once concluding it was technically superior to WhatsApp and not just a moral gesture, and earlier laying out why it earns that reputation: an open protocol, independent audits, and a non-profit foundation instead of an advertising company.

Each time, the comparison was between custodians: the organisations that keep the user directory, operate the infrastructure, and become the place where trust accumulates.

No custodian at all

SimpleX does not compete on that axis.

There is no foundation to evaluate because there is no central directory for a foundation to run. Each conversation gets its own pair of disposable message queues, identified by nothing more than keys the two participants hold. The server stores an encrypted blob until it is collected, then forgets it existed. Nobody operating that infrastructure, however well intentioned, has a customer list to protect or hand over.

That is a different category of guarantee than “we promise not to look.”

Signal’s promise rests on governance: a foundation, its funding, its legal exposure, the people who run it today, and whoever runs it ten years from now. It is a good promise, audited and consistently kept, but it is still a promise made by an entity.

SimpleX sidesteps the entity.

There is nothing to subpoena because there is nothing recording who you are in the first place.

This is the same shift I noticed when WhatsApp moved from phone numbers to usernames: a platform loosening its grip on a fixed identifier. SimpleX takes that one step further by removing the identifier as a concept, not just as a format.

A phone number identifies you. A username identifies you. A SimpleX queue identifies only a conversation.

Testing it

Architecture is one thing. Living with it every day is another.

So I tested it properly rather than simply reading about it.

Image sharing worked without friction. Voice calls, video calls, groups, all there and usable. Connecting with someone new was genuinely easier than I expected. Scan a QR code and you’re in.

The gap I ran into was location sharing, something I lean on more than I realised in WhatsApp, and SimpleX has no real answer for it yet.

That gap is not an oversight. It is the architecture keeping its promise.

Live location depends on a server holding a persistent channel open and streaming updates, the same kind of session that lets a platform know who is online and when. SimpleX’s queues are built for the opposite: a message is dropped once, collected once, then gone.

A workaround exists, sending location as a string of repeated pings, but that recreates exactly the timing pattern the whole design exists to avoid.

The missing feature is the cost of the no-custodian model, not a gap in the roadmap.

💡
SimpleX still uses Signal’s Double Ratchet protocol underneath. The difference is entirely in routing and identity, not in the cryptography of the message itself.

The notification seam

The most interesting trade-off turned out to be notifications.

The app offers three modes: instant, every twenty minutes, or off.

At first glance, that looks like an ordinary settings menu. It isn’t.

Instant notifications require an intermediary. To wake your phone, a message ultimately has to pass through Apple’s or Google’s notification infrastructure, together with SimpleX’s own notification service. None of them can read your messages, but they necessarily learn just enough to deliver them. SimpleX keeps that information to a minimum, yet those services can still infer things such as how many message queues your device has open and roughly how active they are, even though they cannot see who is talking to whom.

Choosing periodic checks avoids handing over even that information. Instead, the app quietly asks the server every twenty minutes whether anything is waiting. Close the app completely and those checks stop. Turn notifications off and nothing arrives until you open the app yourself.

That last option initially struck me as odd. A messenger that deliberately refuses to notify you.

Then I realised I wasn’t looking at a missing feature. I was looking at the architecture.

Instant notifications inevitably require someone to know where your device is so it can be reached. SimpleX tries to avoid creating that relationship wherever it can. The price is that privacy and immediacy cannot both be maximised at the same time.

SimpleX’s own developers have said that many people initially reported the missing instant notifications as a bug.

It isn’t.

It’s the visible cost of building a messenger that tries not to become another place where information about you quietly accumulates.

The catch

The catch is the one every alternative protocol eventually runs into.

Signal has the people you already know.

SimpleX has almost nobody.

Privacy architecture does not move contacts. Network effects do. Switching costs are social long before they are technical.

Whether SimpleX succeeds therefore remains an open question.

For pure usability, iMessage is still the most pleasant messaging tool I own, but Apple’s garden has walls and I would rather not build a work habit inside someone else’s ecosystem.

For the people I actually negotiate, advise and build with, my colleagues and business partners, SimpleX is where I would like that traffic to live.

Not because it has more users today, but because it is the first messaging system I have found that does not ask me to trust anyone with the fact that we are talking at all.

SimpleX Chat: private and secure messenger without any user IDs (not even random)
SimpleX Chat - a private and encrypted messenger without any user IDs (not even random ones)! Make a private connection via link / QR code to send messages and make calls.

Further reading