Privacy
What leaves your Mac
Short version: your images never do. Nocturne opens, processes and exports everything locally. There is no account, no cloud, no upload, and no analytics. This page lists the exceptions honestly, because a connection you discover for yourself is worth less than one you were told about.
The app makes at most two network requests, and you can refuse both
One is the update check, described here. The other is usage counting, which is off unless you opt in — see below. That is the whole list; with both off, Nocturne makes no network requests at all.
The update check
At startup, Nocturne asks api.github.com whether a newer version has been
released.
- Your IP address reaches GitHub as part of that request, the same way it does for any website you open. That is how the internet works, not a choice Nocturne makes about you — but you should know it happens.
- Nothing is sent about you, your machine, your settings or your images. The request asks a question and reads an answer.
- I receive nothing from it. The request goes to GitHub, not to me. I cannot see who made it, or that you made it at all.
- You can turn it off: Settings → Check for a new version at startup.
This was true and undocumented until 17 September 2026 — the check existed, but nothing in the app or on this site said so, and there was no way to decline. Both are fixed, and it is written here rather than quietly corrected.
Your images
Nocturne never uploads an image, a stack, a project file or a FITS header. Everything you open stays on your Mac. The only way an image of yours reaches me is if you deliberately send one — by email, or through the sample-data contribution form, which says so on the form.
This website
- No analytics, no trackers, no cookies. No Google Analytics, no Plausible, no pixels, no embedded fonts phoning home.
- Downloads are counted. Clicking Download adds 1 to a daily tally — a date and a number. No IP address, nothing that identifies you or your browser beyond a check that filters out obvious bots.
- Until 17 September 2026 that click also recorded your IP address. Nothing ever read it; it was collected because the table had a column for it. It has been deleted and the column is gone.
- The web server keeps ordinary access logs, as every web server does. They are not analysed, not exported, and not connected to anything else.
If you donate a stack
The sample-data form takes a name, an optional email, your notes about the target, and the file itself. The file and the IP address of the upload are deleted after four weeks by a scheduled job — that deletion is enforced in code, not a promise I remember to keep. What stays is the credit: the target, the integration time and the name you chose to give.
Usage counting — opt-in, and off unless you say yes
I would genuinely like to know whether the people who download Nocturne ever use it; downloads say nothing about that, and it decides whether things like a proper support system are worth building. So Nocturne asks, once, on first run. If you say no, nothing is ever sent and you are not asked again. If you say yes, this is the entire protocol:
- once, the first time it runs:
{"event": "first-run", "version": "0.34.0"} - at most once a day, while you use it:
{"event": "daily", "version": "0.34.0", "id": "7f3a…"}
That is everything — there is no third message and no other field. No operating system, no locale, no screen size, no hardware, no file names, no targets, nothing about your images, and no timestamp finer than the date.
About that id. It is a random number generated by your copy of Nocturne,
and it is regenerated every calendar month. Within a month it lets me
count installations rather than launches; across months nothing links one to the next, so
there is no history of you and no way to build one. I will call it what it is: a
pseudonymous identifier while it lives, not an anonymous one. It is not derived from your
machine, your account or anything else about you — deleting it is deleting a line in
~/.nocturne/settings.json.
Your IP address is not stored. It reaches the server with the request, as it does with any request; the server is configured not to log that endpoint at all, and the table it writes to has no column for an address and no time of day. Change it in Settings → Count my use of Nocturne whenever you like.
Problem reports
If you send a problem report — from the support page or from Nocturne's Help menu — what you typed is stored on the Nocturne server and read only by Andreas. There is no ticket system and no third party involved.
Your email address is optional. It is used to reply to you about that report and for nothing else: no list, no announcements. Leave it blank and the report is anonymous, though then there is no way to tell you what happened.
Nocturne fills in its version, your operating system, your screen size and window size, and the last thing it printed to its log. It does not send them. They are placed in the form for you to read, edit or delete before you press the button — and they travel to the page in a way your browser never transmits to the server, so nothing reaches us until you choose to send it. The log can contain file paths, and a file path can contain your name; that is why it is shown to you rather than attached silently.
Any screenshot or file you attach is deleted after 28 days, along with the IP address the submission came from. The text of the report is kept, because it is a description of a bug and there is usually no way to ask you about it again.
The session planner
The session planner is the one page on this site that needs JavaScript, and the one that talks to anybody else. On a first visit nothing happens until you type a location and press the button — no request of any kind is made before that.
When you press it, two requests go out, both to Open-Meteo and neither to us. The first sends the place name exactly as you typed it — if you write your street rather than your town, that is what is sent — and gets coordinates back. The second sends those coordinates, rounded to two decimal places, about a kilometre, and gets the forecast. Our server is not involved at any point and never sees where you are. All of the astronomy is computed on your own machine.
A return visit is not the same, and you should know it. Your chosen location is kept in your own browser so you do not have to type it again — and because it is there, the page acts on it as soon as it loads: it reads the target list from this site and asks Open-Meteo for the forecast for those coordinates, without waiting for you to press anything. That is your earlier answer being carried out rather than a new decision, but it does mean a request leaves your browser on page load, and the sentence above would be false if it did not say so. Clearing this site's data removes the stored location, and the page goes back to asking.
Questions, or a removal request
Nocturne is written by one person in Sweden. Ask me anything about this page, or ask me to delete something, at andreas@stehn.com. For most of what is described here the honest answer is that there is nothing stored that is identifiably yours — but ask, and I will tell you exactly what there is.