The mobile app

How the app works

Neutral Perspective on a phone: what it does, what happens to a conversation after you hand one over, and where the app can do things the website cannot.

Version 1.3.0 · iPhone and Android from one codebase · updated 19 August 2026

In short

  • It reads a real conversation between two people and writes back an even-handed account of how they talk to each other.
  • Three ways to give it one: share a chat straight out of WhatsApp, pick a file, or record the two of you talking.
  • Several sources are read as one conversation — a chat from this morning and a recording from this afternoon are one relationship, not two unrelated reports.
  • There is no account. Nothing is signed into, and nothing is kept between readings.
  • It talks to the same server the website does, so there is one analysis and one set of privacy promises rather than two.

Share a conversation

The reason the app exists. In WhatsApp: open a one-to-one chat, choose Export chat, then Without media, and pick Neutral Perspective from the share sheet. The file is handed over by the phone itself.

On the website the same job takes three more steps — export it, find where it landed, upload it — and that is where most people give up. The app has no access to WhatsApp or to anything else on the phone; it receives only what the share sheet hands it.

The extension currently accepts text and zip files. SMS .xml and iMessage .csv exports come in through the file picker instead, until those types are added to the share extension.

Record a conversation

A consent screen comes first — always, before the microphone is touched. It asks whether the other person knows. Recording someone secretly is illegal in much of the world, and this app is pointed at conversations with a partner, which is exactly where a quietly-running microphone does real harm. The microphone permission is requested only after that question is answered, so the phone's own prompt never arrives before the person has decided they are allowed to record at all.

Then a recorder: put the phone between you and talk. A running clock, pause and resume, and a floor of 45 seconds before it will let you stop — a proxy for the server's real floor of twelve turns of speech. Forty-five seconds of genuine back-and-forth clears it; forty-five seconds of one person talking does not.

Recordings are AAC in an .m4a container. iOS can encode MP3 and Android's recorder cannot, so MP3 is not available on both platforms from one codebase. The transcription endpoint takes .m4a directly, so nothing is converted anywhere and the file is smaller than the MP3 would have been.

Talk on your own

The third way in, and the only one that needs nobody else. You talk for a minute or more about whatever is on your mind, and get back a reading of what you said rather than a report on an exchange between two people:

  • What you are carrying — said back to you, specifically, in order of weight rather than the order it came out.
  • What is underneath it — the feelings and needs named plainly, including the ones talked around rather than said.
  • What you might not be seeing — assumptions held as facts, offered as a possibility to consider and never as a correction.
  • What keeps coming back — what you returned to more than once.

Then the same three things to try, the same "what already works", and the same safety flag. Every observation is hedged on purpose: this is one account of events, told by the person inside it, and the reading says "as you describe it" rather than stating what anyone else did or meant.

There is no consent screen here — there is nobody else in the room — and the floor is 60 seconds rather than 45, because a monologue has no turn-taking to read and the only thing the reading has to work with is how much you actually said.

The transcript is saved to your phone. The recording is dropped as soon as it has been transcribed, as always, but the words come back and are kept in the app's private folder. You can read them later, delete them, or add one to a reading of an actual conversation so it is read next to the chat it was about.

Nothing uploads on arrival

Everything that comes in — shared, picked or recorded — waits on the home screen until you press Read these together.

That is the point of the queue. Two people talk in more than one place, and the pieces arrive at different moments: a chat comes in from the share sheet, a recording is made ten minutes later, an old SMS backup is picked from Files. Uploading each as it landed would produce three unrelated reports of the same relationship. Up to eight files go up in one request and are read as a single conversation.

The queue is deliberately not saved anywhere. A share can arrive while the app is cold and has to survive the trip to the record screen and back, but nothing should still be sitting there tomorrow — closing the app clears it, which is the promise the website makes.

Voices

Optional, on the home screen. A six-second clip of each person, and the transcript of a recording says "Mara" instead of "Speaker A".

That matters twice over: the report reads as a conversation between two named people, and a recording can be merged with a WhatsApp export without anyone being asked twice who is who — the names already match. Use the same name here as in your chats.

These clips are biometric data, and are handled differently from everything else:

  • They are written to the app's own private folder on the phone.
  • They are not stored on our server, and there is no account they could be attached to.
  • A clip leaves the phone only inside the same request as the recording it is labelling, and is not kept after it.
  • Deleting a voice deletes the file. Deleting the app takes all of them.

Only enrol people who have agreed to it. The screen says so.

Which one is you

Before anything is read, one question per source: which of these two people are you?

With a single upload this is the one question it always was. With several it is asked once for each, because nothing in the files connects a name in a WhatsApp export to a phone number in an SMS backup to "Speaker A" in a recording. The app does not guess: guessing wrong would attribute half the conversation to the wrong person, which would quietly poison every number in the report.

For a recording the question becomes which voice is you, with the hint that Speaker A is whoever talks first. Where a sensible suggestion can be made, it is preselected. When the sources are merged a real name beats a placeholder, so a WhatsApp export decides what the two people are called even if a recording arrived first.

The report

A minute or two, then the same report the website produces — because it is the same server writing it.

  • A headline and summary — the central pattern in one sentence, then the shape of the whole thing.
  • Four sections: how the conversation changed, anything harmful named plainly, the patterns underneath the arguments, and an overall assessment.
  • Three things to try this week, written for how these two actually talk.
  • What already works — it always finds something.
  • A caution note when the conversation shows coercion, threats or intimidation, pointing calmly towards professional support.

Under each of the four sections is Look at this more closely, which runs a second, deeper pass on that section alone: three to five detailed findings, a question to sit with, and one concrete step. Expansions attach to the section they came from, so the screen still reads top to bottom whether or not any were opened.

At the bottom is Delete my conversation now. The report stays on screen; what is behind it is dropped immediately.

What exists, and for how long

WhatWhere it livesHow long
Files in the queueThe phone onlyUntil you upload them, or close the app
Voice clipsThe phone's private app folderUntil you delete the voice, or the app
Notes from talking on your ownThe phone's private app folderUntil you delete the note, or the app
An upload waiting to be readServer memory, never disk30 minutes
The conversation behind a reportServer memory, never disk60 minutes, or instantly on Delete my conversation now
A recordingServer memory, never diskDropped as soon as its transcript exists

The app collects no device identifiers, no location and no advertising ID, and contains no analytics or tracking of any kind. The full policy is at neutralperspective.com/privacy, linked from the app's home screen.

Languages

English and Spanish, taken from the phone's own language setting — there is no switcher in the app because the phone already has one. Everything follows: the screens, the errors, and the report itself, which is written in the reader's language while quoting the conversation in whatever language it was held in.

What it will refuse

  • Group chats. One-to-one only. Three or more participants are refused rather than read badly.
  • Anything under 20 messages, or under 12 turns for a recording, or under 100 words when you are talking on your own. The floor applies to everything in the queue together, so three short exports can add up to a readable conversation when none of them would do alone.
  • A file it cannot read. The refusal says why — no date at the start of any line, markup rather than a transcript — describing the shape of the file without ever quoting what is in it.

How it fits with the website

There is no app-specific API. An upload from the share sheet and an upload from the web page hit the identical endpoint, which is why there is one analysis pipeline, one report format, and one set of privacy promises to keep.

WebsiteApp
Chat exportsYes — upload a fileYes — share sheet or picker
Recording a conversationNoYes
Several sources as one readingYesYes
Named voicesNoYes
Talking on your ownNoYes
PDF of the reportYesNot yet
Anything to installNoYes

Where it stands today

Working: share-sheet intake, the file picker, recording behind a consent gate, voice enrolment, several sources read as one, the full report with its deeper looks, both languages, and delete-on-demand. An installable Android build exists.

Not built yet: an iPhone build to hand out, which needs an Apple Developer account and TestFlight; a PDF or share of a finished report, which the website has; talking on your own from the website rather than only the app; SMS and iMessage exports arriving through the share sheet rather than the file picker; and a full-resolution app icon.

Neutral Perspective is not therapy, not counselling, and not a substitute for professional help. Nothing in a report is a clinical judgement.