Privacy policy

Wild Willows works fully offline, needs no account, and collects as little as it can. This page is the complete list of what the game handles, what leaves your device, and how to have it deleted.

No account No ads No tracking No third-party analytics Nothing sold or shared Works offline

Effective 3 July 2026 · last updated 19 August 2026 · Bailey Dunning · [email protected]

The short version

The long version below says the same things with the exact field names.

Your world stays yours

Saves are files on your own device, and the world itself is never uploaded. No account, no sign-in, no ads, no tracking, no third-party analytics. The browser demo is the exception — see the browser version.

Play statistics, while you're online

When you're online, the game periodically sends a snapshot of counters — play time, things crafted, animals returned — tagged with a random per-save ID.

Your save's name rides along

It's the one field in that snapshot you chose, and it's there so a row is recognizable rather than a bare UUID. Nothing else in the snapshot identifies you.

Only what you type

The single piece of personal information I ever receive is whatever you put in the feedback form, including an optional email if you'd like a reply.

Data stored on your device

Your saves are local files in the app's data folder. Each save holds your caretaker's name and appearance, your world (terrain, placements, plants, animals, chests), and gameplay counters. The game also uses local browser-style storage for small preferences and to queue unsent feedback while offline. None of this local data is readable by me; deleting the app, or the save files, removes it.

The Mac App Store build is solo-only: no multiplayer, no account, no passcode. The game is fully playable with no internet connection at all.

What the game sends automatically

While the game is open and a connection exists, it sends a snapshot roughly every three minutes, plus once when the window is hidden or closed. This is the whole payload — there is nothing in it that isn't listed here.

A random identifier
A UUID generated on your device for the save slot. It is not derived from you, your device, or your Apple ID, and it cannot be used to identify you.
The name you gave the save
The caretaker name you typed when you created the preserve — sent as you wrote it, so a row reads as something rather than a bare UUID. It is the only field you chose yourself, and the snapshot carries no other identifying information.
App & platform
App version, build timestamp, edition and release channel, platform (“desktop” or “web”), operating system family (mac / windows / linux), and the interface language you play in.
Gameplay counters
Play time, number of sessions, resources collected, items crafted, objects placed, plants planted, animals observed and returned, biomes unlocked, achievements earned, and similar progression numbers.
Your settings
Audio and accessibility choices — music and sound toggles and volumes, reduce motion, colorblind mode, interface font, high contrast, text size, simpler wording, interaction highlight, and light/dark theme. These live only in local storage, so they ride along here; they are what tell me whether the accessibility work is actually being used.
Not included, ever
No location data. No contact information. No advertising identifiers, and nothing read from your hardware — no serial number, no MAC address, no Apple ID, no device fingerprint. No real name, unless you typed one into the save name yourself.

About that save name. It's the one human-written string in an otherwise numeric payload, so it deserves saying plainly: it is sent, and it is the only part of an automatic snapshot that came from you. Everything beside it is a random ID, a version string, or a count.

The game never asks for your real name, and there's a dice button beside the field that fills in a random caretaker name for you — but the field itself is free text and starts empty, so what goes in it is your choice. Nothing in the snapshot ties that name back to you, your device, or your Apple ID. It is set once, when you create the preserve, and there is no way to change it afterwards — so pick something you're happy for me to see. If a name you already used bothers you, email me and I'll delete that row.

Sending is best-effort. If you're offline the report is simply skipped — nothing is queued, and the game never nags you to connect. I use these snapshots solely to understand how Wild Willows is played and to improve it.

If you would rather send nothing, play with the device offline: the game is built to work that way and loses no feature by it.

Two smaller things the game sends

Neither is part of the snapshot above, so they get their own heading rather than a footnote.

A ping when the app opens
Once per launch, before any save exists, the game reports that it was opened: a random identifier generated on this installation, the platform and operating system family, the app version and edition, where the copy came from (the store or site you downloaded it from), and the interface language. It tells me how many people who open the game go on to start a preserve, which is the one number that says whether the opening works. The identifier is a random UUID this installation made for itself — not read from your hardware, not tied to any save, and gone when you delete the app. It is the only persistent identifier the game keeps, and it is why the list above says “nothing read from your hardware” rather than “no identifiers”.
A report when something crashes
If the interface throws an error, the game sends the error message and the technical stack trace that goes with it, both truncated, along with the app version and platform. It is capped at a handful per session. These are the game's own internals, not your data — but a stack trace is text, so it is named here rather than left implied.

Feedback you choose to send

The in-game feedback form (in Settings) sends whatever message you type, plus light diagnostic context so a report like “the game feels slow” makes sense: app version and build, platform and operating system, browser user-agent string, your save's name, tutorial progress, unlocked biomes, achievement count, and play time.

You may optionally include an email address if you'd like a reply. It is used only to answer you — never for marketing, never shared. If you're offline when you submit, the feedback is stored on your device and sent automatically once a connection returns. On my server, feedback and any reply address are readable only by me.

What I do and don't do

I do

Count how the game is played, so I know what to build next
Read every piece of feedback myself
Talk to my own server over HTTPS, and nowhere else
Delete your data when you ask See deletion below.

I never

Sell, rent, or share your data with anyone
Ship advertising, tracking SDKs, third-party analytics, or social integrations
Profile you, or combine game data with data from anywhere else
Ask for a real name, an account, or a sign-in

Storage, retention and deletion

Where it lives
Gameplay snapshots and feedback sit in my database on my hosting provider's infrastructure, which processes the data only on my behalf. Everything is transmitted over HTTPS.
How long snapshots are kept
Long enough for trends to stay visible. Each save slot has exactly one row, overwritten by its latest snapshot — there is no history of where you were last Tuesday.
How long feedback is kept
Until it has been read and acted on.
Getting it deleted
Email [email protected]. Include your save's name for snapshots, or the approximate date and message for feedback, and I'll remove it.
Stopping collection
Deleting the app from your device stops it immediately. Playing offline means nothing is sent in the first place.

Children

Wild Willows is gentle, non-violent and rated 9+ on the App Store — a rating that reflects how much reading it asks for rather than anything in its content. The age-suitability page explains that in full.

I do not knowingly collect personal information from children. The game never asks for a real name, and the only free-text personal data anywhere is the optional feedback email. If you believe a child has submitted personal information through the feedback form, contact me and I will delete it.

The browser version

The browser version is the free demo at play.wildwillows.app, and it works the opposite way round from the installed game: your save lives on my server instead of your device — the save name, a passcode (stored only as a salted hash, never in plaintext), your caretaker's appearance, and your world state. Play in the browser and your world is on my server; install the game and it never leaves your machine.

Two consequences of that, worth stating plainly:

  • The demo has no passcode you ever see. It mints a random one for you so the save can exist at all, and never shows it. The only way back into a demo save is a pointer your browser keeps, which means clearing site data, or moving to another browser or machine, disconnects you from it permanently. It also means nobody else can reach it.
  • The demo deletes its own save when you reach the end of it.

If the server can't be reached when the page loads, the demo falls back to running entirely inside your browser, and the save is genuinely local to it — in which case clearing site data erases it outright.

Everything else in this policy applies identically — no ads, no tracking, nothing sold or shared, and the same deletion route.

Changes to this policy

If the game's data practices ever change, I'll update this policy, revise the effective date at the top, and note the change in the release notes. Material changes get called out in-game.

Questions, concerns, deletion requests

They all go to one person, and that person is me.