Lauki / Privacy & Security Open the app

Privacy & Security

Last updated October 27, 2026 · The legal bit · Changes to this page · Terms

Your messages are encrypted in transit and at rest, and we hold the keys. Lauki is not end-to-end encrypted. Every message travels to us over an encrypted connection and is stored in our database as ciphertext. Our server holds the keys, opens a message when someone with the right to see it asks, and writes every open to a log nobody can edit. That means the operator of Lauki can read your messages. We chose this so every message opens on every device you sign in on, with no PIN, no key ceremony and nothing lost when you change phones. Under each claim below is how we prove it.

How your messages are stored

Sealed at rest, one key per chat. Every message and file is stored as ciphertext under a key that belongs to that chat alone; text and files never share one. The chat key is wrapped under a per-account key, wrapped in turn under a root key kept outside the database. A copy of the database alone opens nothing.

How we prove it: on every release a test reads the stored rows directly and finds only scrambled bytes.

Files sealed in pieces. Photos, videos, voice notes and files are sealed on the server chunk by chunk under a key derived per file. A file link is signed to the person opening it, checks they are still in the chat, and expires within about an hour. The sender owns the file; nobody else can re-send it as their own. Uploads started and never finished are cleared each night; the sweep never deletes a file that exists.

How we prove it: a test alters a file link by one character and is refused; another waits for a link to age and finds it dead.

Calls are recorded. Every voice call between people, one to one or in a group, is recorded. Each phone records only its own microphone and uploads it in short pieces during the call; the server seals every piece at rest under a key that belongs to that speaker. Everyone on the call sees a Recorded label from the moment it connects. Our server holds these keys too, so a recording is protected at rest, not from us. Lauki the assistant never joins these calls.

Call recordings waiting to upload are tied to the account that recorded them: they upload only when that same account is signed in on this device, and are stored on our servers sealed at rest (not end-to-end encrypted). Before Oct 27 2026, a recording waiting on a shared browser could upload under the next account signed in there; that is fixed.

A call is written up only when you send it to Lauki. Since 6 October 2026 no call is transcribed automatically and nobody sees a transcript, summary or action items in the app. A recorded call card has one button, Send to Lauki: it puts your note and a link to the call in your own chat with Lauki. Only then does Lauki read that call: our server transcribes it once, for Lauki alone, stored sealed, and Lauki asks you what you want done before doing anything. Each such read and the transcription itself writes a line to the log. The other people on the call see nothing of your request. Only people who were on the call can play the recording, and each play is logged. Deleting the call from the chat for everyone hides its recording from everyone and from Lauki; like a deleted message, the sealed recording is retained, not purged.

How we prove it: a test asks for a call's recording as someone who was not on it and gets nothing; another checks that no recording ever reaches a speech-to-text service until a participant asks.

Backups sealed in a separate vault. Snapshots are sealed under their own key in storage nothing public reaches. In the 5 September audit we found one older backup stored in plain form; it was sealed, moved into the vault and the original deleted that day.

How we prove it: a test asks the public file host for a backup by every path and gets nothing.

Who can read what

WhoCan seeCannot see
You and the chatEverything in the chat, on every device you are logged in on.Anyone's phone number but your own.
Lauki, the assistantYour direct chat with him, and the chats he has a seat in. Every message he opens is logged under his name.Chats he has no seat in, unless someone there names him. Anything without leaving a record.
Lauki operatorsMetadata: who is in which chat, when, sizes and names. A message's text if they open it, because the server holds the keys; that open is logged.Nothing, anywhere, without leaving a record.
Apple, Google, MozillaThat your device has a notification waiting. For the Lauki app on iPhone and Android, also who it is from and which chat, so your phone can show their name and photo.The text: it is sealed to your device before it leaves us. In a browser, not the sender either.
A courtWhatever a valid order compels us to open, through the same logged path.Nothing quietly.

The log

Every open of a message or file on the server writes one line: who asked, which chat, why, when. That includes you reading your own chats, Lauki reading where he is spoken to, and any operator. The table refuses edits and deletes, so the record exists before the reader finishes reading, and nobody can tidy it up. Each night the day's log is copied once into sealed storage that cannot be overwritten. Opens may happen; they cannot happen invisibly.

Read from that log on 6 September 2026: no open by an operator, ever. Every open under Lauki's key was one of four kinds, each with its own line: answering someone who spoke to him, reading a chat when asked to look something up, bringing back a message that was lost (with a written reason), or preparing your own data download. Every other open was a person reading their own chats.

How we prove it: the log rejects edits and deletes at the database level; a test tries both on every release.

Leaving a chat

Leave, and access goes with you. When you leave a group, are removed, delete your account, or an admin deletes the group, your access to that chat is revoked in the same step, not later. The server stops opening its messages for you, and any file link you held dies at that moment. Re-added, you see the chat again.

How we prove it: a test leaves a group and confirms the old key opens nothing new; a sweep of every chat finds no former member holding one.

Your data is yours

Download everything. Settings → Download my data gives you one file: your profile, your chats, every message you can see, files as expiring links. Once per day, from a signed-in session only; an API key cannot ask for it. Every message in it is logged as a read by you.

Delete everything. Deleting your account wipes your keys, sessions, devices and identity. What you posted in groups stays in those groups; the rest is in the legal bit.

How we prove it: a test downloads its own data, checks nothing is missing or extra, then asks again that day and is refused.

What this protects against

Encryption at rest protects your messages from someone who gets a copy of our database or our backups without our keys: they get scrambled bytes. Encrypted connections protect them on the way to us and back. File links protect your files from anyone who is not in the chat. The log protects you from quiet reading: an open always leaves a line.

It does not protect your messages from us. Our server holds the keys, so someone who controls our server, or a valid legal order served on us, can open a message. That open is logged, but logging makes it visible, not impossible.

How we prove it: a test reads stored rows with the database alone and finds only scrambled bytes, and a member removed from a chat is refused its messages and files.

Notifications

A notification carries the sender's name and up to 140 characters of the message, sealed to your device's own push key. Our server seals that preview for each of your devices; Apple, Google and Mozilla relay a sealed payload and see neither the name nor the text. A device we have no push key for gets a plain "New message" and opens the text itself.

How we prove it: a test stands in for Apple's push relay and receives only scrambled bytes; only the device's own key turns them back into the sender and preview, and a stolen relay credential opens nothing.

In the Lauki app on iPhone and Android, each install makes its own notification key on the phone, and the preview is sealed to it the same way; the phone opens it itself. The banner's sender name and chat name travel in the clear so it can show them; the text never does.

How we prove it: the Apple and Google payloads are checked to carry no text, and another phone's key opens nothing.

Devices

Every device sees everything. Sign in with the one-time code sent to your number, or shown on a device you are already signed in on, and the whole history of every chat you are in is there. There is no PIN, no pairing and no recovery step: the keys are ours to hold, so changing or losing a phone loses nothing.

Moving off the old setup. Until 5 October 2026 most messages were sealed on the sender's device. On 5 October we moved every one of them our server could open into the storage described above, opening each once, sealing it at rest and checking it against the original before switching over. Those opens are logged. A small number were sealed only to members' own devices and never to us; when a device that still holds their key next opens Lauki, it hands that key over and the messages move too. A message no device can open shows as "Message unavailable".

How we prove it: every moved message was opened again after the move and compared with the original; none differed.

Lauki and AI processing

Lauki, the assistant, reads your direct chat with him and, elsewhere, the messages that tag or name him, with a few before them for context. In a group where he has a seat, he also reads recent messages to tell whether he is being spoken to; the group's members can remove him from its settings. Lauki's AI providers are configured not to train on your messages. Lauki's AI providers keep nothing: zero data retention - what you send is not stored by them and not used to train their models. That promise is about Lauki the assistant; the speech-to-text providers that turn calls and voice notes into text are separate, and what they may keep is set out under Third parties. Calls with Lauki are not covered by it either; see below.

Calls with Lauki. A voice call with Lauki himself, when you tap Call Lauki or when Lauki calls you, is not one of the calls between people above: it does not run on lauki.chat's call system, and lauki.chat records no audio or transcript of it. It runs on Lauki's voice service and is carried by ElevenLabs, which runs the voice and the AI model behind it. Calls with Lauki are recorded and transcribed. Lauki says so in the first thing he says on every such call; the ring and call screens carry no recording label, this page is where it is written down. The audio and transcript of the whole call are recorded from the moment it connects and kept until they are deleted: there is no automatic deletion, and ElevenLabs' zero-retention mode is off for these calls. Lauki keeps the transcript so he can act on what was said. The zero data retention promise above does not cover these calls; what ElevenLabs does with the audio it receives is under Third parties. To have a call with Lauki deleted, write to hi@lauki.ai, or message @lauki in the app. When Lauki calls you, lauki.chat keeps only that he rang, the one-line purpose shown on the ring screen, and whether you accepted, declined or missed the call or he cancelled it; the link to join is deleted when the ring ends.

Letting Lauki work in your chats. It is on by default and you can turn it off in Settings anytime. While on, Lauki can read and send in your own chats. He uses it only when you ask him in your direct chat with him, and only for you: a request from one person never opens anyone else's chats. Every chat he reads and every message he sends for you is logged under his name with your account on it, messages he sends for you carry a "via lauki" tag that everyone in the chat sees, and turning it off in Settings stops it on his next request.

Every message Lauki opens is logged under his name. If a message is lost by accident, an operator can open that one row, with a written reason, also logged and sent to our alert channel.

How we prove it: a live test sends Lauki a message, reads his answer back, and finds the logged open under his name; a recovery open leaves a logged row carrying its reason.

What Lauki remembers about you

Lauki is his own entity. The notes and memory he keeps about you live in a private container of his own, outside the chat database. As of today our admins can access that container. Ask him and he will tell you what he holds, or forget it.

What this is not

What's next

Still to come:

This is being built now. Each change is published here as each lands.

Security reports: hi@lauki.ai.