Privacy
Last updated 5 October 2026
Ghost.md is a notes app made by Matt Wisniewski ("we", "us"). This page says what happens to your notes and your data when you use the Ghost.md apps for Android, iPhone and Mac, the web version, and the ghostmarkdown.com site.
- Your notes are files on your device. You don't need an account to use Ghost.md.
- In the apps, what you say is turned into text on your device. Your voice isn't sent anywhere to be transcribed.
- If you make an account to sync, everything is encrypted on your device before it's sent, so we can't read it.
- If you join a team (an organization), its name and who is in it are kept in the clear, so teammates can be invited by handle. Notes you file in it are shared with its members, encrypted so that only they can read them. Your other notes stay yours alone.
- No ads, no analytics, no tracking, and we never sell or share your data.
- You can delete your account, and everything it keeps on our servers, from the app at any time.
On your device
Your notes, their recordings and their pictures are stored on your device, as plain Markdown files and the files beside them. Voice transcription and note formatting run on your device, using models the app downloads once. We can't see anything that stays on your device.
Your device's own backup (for example Android's backup to your Google account) may include the app's files. That backup is between you and your device's maker, under their terms.
Your account, if you make one
An account is optional. It keeps your notes the same on each of your devices. When you have one, our sync service stores:
- Your handle (the name you sign in with), and when the account was created and last signed in to.
- A value made from your password, so you can sign in. Your password itself never leaves your device: the app derives two keys from it, and sends only one, which we store as a salted hash. The other, which unlocks your notes, stays on your devices.
- Your synced notes, recordings, pictures and settings, encrypted on your device (AES-256-GCM) with a key only your devices and your recovery codes can open. We can't read them.
- What's needed to sync, which we can see: random ids for each note and file, when each was changed, their sizes and how many there are, a picture's file type, and which kind of device each of your devices is (for example "Mac").
- A public key for each of your devices, so a signed-in device can stay signed in.
We don't store your IP address with your account. Our service uses it briefly, in memory, to limit repeated sign-in attempts. Our web server keeps ordinary access logs (IP address, time and the address requested) for security and troubleshooting, and we don't use them for anything else.
Organizations and notifications (optional)
You can make an organization, a team, and invite other Ghost.md accounts to it by handle. So that an invitation can reach another account, an organization is not encrypted the way your notes are. For each organization you make or join, our service stores and can see: its name and colour, who owns it, when it was made, and who is in it by handle, each with their role (owner, admin or member), whether they have joined or are invited, who invited them and when. If someone declines an invitation, that is kept for a day so the organization can't ask them again at once.
Inviting someone tells you whether a handle exists ("No one has that handle."). That is the one place a signed-in account can learn this, and it is limited to thirty invitations an hour per account and per network address.
Your account also has a list of notifications. For those the service writes itself (an invitation, someone joining or leaving a team, a rename), it can see the kind, when, who caused it, which organization, and the few words in it, such as the organization's name. For those your own devices or a connected AI assistant write about your own notes (a note the assistant created or edited, a meeting written up, a note kept twice by a sync), the contents are encrypted on the device like a note, and the service sees only the kind and the time. For every notification, the service can see when you read it and whether you hid it, so that follows you across your devices. Which notifications you see is a setting in Settings › Notifications; an invitation is always shown.
Notes filed in an organization are shared with its members. A note you file in an organization's workspace, or make there, is the team's: every member can read it, edit it, comment on it and delete it, and members who have it open at the same time see each other's typing, cursor and colour. Notes you don't file there stay yours alone. Team notes are encrypted on a member's device with a key made there and held only by the organization's members, wrapped separately for each of them, so our service stores them and cannot read them: not their titles, words, comments, pictures or version history, and not who wrote a comment.
What our service can see about a team note: which organization it belongs to, its id, its size, when it changed, and which account wrote each change. It also keeps each member's public encryption key and chosen colour. While team notes are being edited live, the service that passes the edits along can see which signed-in account has which team note open, and when; it can also see that a member's device is in the app and when it has just saved a change to the organization. The edits themselves, the note's title and where a cursor is are encrypted, and nothing passed along is stored. Every change to a team note is listed by handle in the note's version history, which is inside the encryption and shown to its members; the organization's activity log shows it to them alongside the membership events described above.
You can decline an invitation, leave an organization at any time, and mute its notifications; an owner or admin can remove a member. Someone who leaves or is removed loses access to the service at once. The next time a remaining member's device syncs, the team's notes are re-encrypted under a new key they don't have. They keep whatever their devices had already downloaded. The organization's key is also kept, wrapped, for someone who has been invited and has not yet accepted, so it is ready when they do; they cannot read it or anything else until they join. Deleting an organization removes its notes, files and keys from our service. Because we cannot read team notes, we do not review them. You can report a member, or something written in an organization, from its settings under Report: that opens an email to the address under Contact, and since we cannot read the note ourselves, the email has to carry the words it is about. An owner or an admin can remove a member, and anyone can leave. Share only with people you trust.
Shared links
When you share a note or a notebook, the app encrypts a copy and uploads it. The key to open it is in the link itself, after the "#", which browsers don't send to servers, so we can't read what you shared. Anyone you give the link to can read it. You can stop a link at any time in Settings › Account, and it stops opening at once. Links are deleted with your account.
Live typing (optional)
If you turn on live typing, what you type in a note open on two of your devices is passed between them through our service as it's typed. It's encrypted the same way as your notes, and our service doesn't store it.
Connecting an AI assistant (optional)
You can connect an AI assistant, such as Claude, to your notes. If you connect it through our hosted connection, you sign in on a page that gives our server your notes' key for the length of that connection, so it can read and write your notes when the assistant asks. The key is held in memory while it is used. So that a restart of our server doesn't disconnect you, it is also kept on disk, but only sealed: it opens only with a token the assistant holds, and we don't keep those tokens. It is forgotten when you disconnect, when you sign out everywhere, or after 7 days without use. What the assistant reads goes to its maker (for example Anthropic), under their privacy policy. Notes the assistant writes are marked with its name.
Plugins (optional)
- Notion: if you connect Notion, your device talks to Notion directly, sending the tasks you choose to send. Signing in to Notion passes through our server, which holds the sign-in tokens in memory for up to ten minutes until your device collects them. The tokens are then kept on your device.
- GitHub: if you connect GitHub, your device talks to GitHub directly with the token you give it, which is kept on your device.
What you send to those services is covered by their own privacy policies.
Links, updates and downloads
- Link previews: to show a preview of a link in a note, your device fetches that page directly. The site sees your IP address, as it would if you opened the link. You can turn previews off in Settings › Account › Privacy.
- Where a note was written: a new note you make starts with where you are, once you allow Ghost.md to know it, and you can add or remove a note's location from its More sheet. Finding where you are asks your device's location service, which on Android and in a browser uses nearby Wi-Fi and mobile networks and so the service's own servers (Google's, Apple's or your browser's). Turn "Tag new notes with my location" off in Settings › Account › Location on each device to stop it; Local only stops it too. Notes you already have are never tagged.
- Maps and place names: a note tagged with a location shows a small map, drawn with tiles your device fetches from openstreetmap.org when you open the note, and asks OpenStreetMap's Nominatim once, when the location is written into the note, for the place's name, which is then kept in the note. A new note that never gets a word asks neither. Those servers see your IP address and the coordinates asked about (to about 100 m for the name). Both are off under Local only, and each has its own switch in Settings › Account › Location. A note's location is part of the note: it syncs with it, end-to-end encrypted like the rest of the note, it is in the note's file in the phone's Files app, and a connected AI assistant sees it. A shared link leaves it out unless you tick "Share where it was written" on that note.
-
Blanks the AI fills: a question you write in curly brackets, like
{?weather tomorrow}, is answered on your device. When it needs something live, such as the weather, an exchange rate or a recent result, and you press Fill, your device asks one public source directly: Open-Meteo for the weather (the place's name, then its coordinates), Frankfurter for the European Central Bank's exchange rates (the two currencies), or Wikipedia and Wikidata (the words of the question in the braces, or for an empty{?}the words of its own sentence that ask). No account or key is used, and nothing else from the note is sent. The source sees your IP address and what was asked. Your device then writes the answer from what came back: the weather and a rate from the source's own figures, and a Wikipedia answer only if its words are in what was returned. Turn "Look up blanks online" off in Settings › Account › Privacy to stop it. Local only stops it too. - Updates and models: the apps check attack.fm for updates, and download the voice and formatting models from attack.fm, or from Hugging Face if attack.fm can't be reached. These are plain downloads: no account, device id or anything about you is sent. The servers see your IP address.
The web version
In a web browser, Ghost.md uses the browser's own speech recognition to turn speech into text. In Chrome, that sends your voice to Google to be transcribed, under Google's terms. The Android, iPhone and Mac apps transcribe on your device instead.
What we don't do
We don't use analytics, crash reporting, advertising or tracking of any kind, and there's no advertising id. We don't sell your data, share it with anyone (the location, map and place-name requests above are the one exception, and you can switch them off), or use it to train AI models.
Deleting your data
To delete your account, open Ghost.md, go to Settings › Account › Delete account, and enter your password. This deletes, at once and for good, your account and everything it keeps on our servers: your synced notes, recordings, pictures and settings, your shared links, your devices and your recovery codes, your notifications, and your place in every organization (the organizations you had joined are told you left). While you own an organization that anyone else is in, the app asks you to hand it over or delete it first; an organization with nobody else in it is deleted with your account. Your other devices are signed out. The notes on your device stay, because they're your files. More on deleting your account.
Without an account, nothing of yours is on our servers. Uninstalling the app removes its files from your device.
Children
Ghost.md isn't directed at children under 13, and we don't knowingly collect data from them.
Changes
If this policy changes, we'll update this page and the date at the top.
Contact
Questions about privacy, or a request about your data: write to infamousvaguerat@gmail.com.