Privacy you can actually feel, and insights worth opening
Two things landed in Moodio recently that pull in opposite directions and yet belong together: we made the app share less, and we made it tell you more.
Private now means private
We got a piece of feedback that reframed the whole product for us:
"An app can either be performative or sincere. This app feels sincere but lacks privacy. I don't want people to see the location of my most-sent moods. I don't want people to stalk me."
That's not a settings problem. A privacy toggle that only hides your name while your pins still glow on a map at street precision isn't privacy — it's decoration. So we rebuilt what the toggle means.
Turning on a private account now does all of this:
- Only mutuals see your moods. Not "followers" — mutuals. If someone follows you and you don't follow back, they stop seeing your moods immediately. Accepting a follow request makes the follow reciprocal, on purpose: sharing is something you do with someone, not something that happens to you.
- Anonymous no longer means unprotected. Posting a mood with your identity hidden used to route around some visibility checks. It doesn't anymore. Private wins over every other flag, every time.
- Your account stays findable. You are still searchable and still followable. Privacy shouldn't mean disappearing — it should mean you decide.
- Messages default to off. Accepting a follow request shares moods. It doesn't silently open a DM channel. That's a separate switch, and in private mode it starts off.
- Live updates go quiet. Private accounts aren't connected to our realtime tier at all. Not filtered — disconnected. There is no live stream to leak from, and no timing side-channel that says "they just posted." You still see everything; you just pull it when you refresh.
The part nobody asked for, that mattered most
While building this we found something that affected everyone, private or not. Our fine-grained map aggregation reported exact mood counts per grid square. Squares that small, with counts that exact, are a location oracle: a single mood in a quiet square is a pin with extra steps.
So aggregate cells below a minimum number of contributors are now suppressed outright. The map is allowed to have holes. We'd rather show you less than show you someone's front door.
Insights, redesigned
The other half of the release is the opposite instinct. Once your data is genuinely yours, it should be worth looking at.
The insights page is now built out of sections that each stand on their own — if one fails to load, the rest of the page doesn't go blank with it:
- A daily recap and an on-this-day card, so your history surfaces itself instead of waiting to be dug up.
- A places explorer. Pick any point on the map — right-click on desktop, a map button on mobile — and choose "Mood around this location." You get your own moods within 25 km of that point, across a day, a week, or a month. You can keep up to five saved places.
- The mix: what you've actually been feeling, rather than what you'd say if asked.
- A weekly rewind, precomputed and waiting for you, shareable as a link that carries a picture of a feeling and nothing else — no identity, no coordinates, no dates.
- A badge case. Early bird. Night owl. Full spectrum. Clockwork. Small, honest markers of how you show up.
One less search box
We originally planned a "search for a place by name" field, backed by a geocoding service. We deleted it before it shipped, along with the server-side geocoder behind it.
The reason is simple: if you right-clicked the map, you have already pointed at the place. There was nothing left to resolve. The map turned out to be a better place-picker than any text box we could have built — and it meant one fewer service that ever had to see where you were curious about.
Where this leaves us
The through-line is a single rule we now hold ourselves to: a feature that reveals where you are has to earn it. Aggregate map tiers survived that test because a continent-level count isn't anybody's location. Exact per-square counts didn't. Live broadcast for private accounts didn't. A geocoder for a place you already clicked didn't.
The mood map only works if people are honest on it, and nobody is honest somewhere they feel watched.
More soon.