Where the file goes
Your voiceprint is a plain Markdown file. It belongs wherever your AI keeps its standing instructions, which is a different box in every tool and takes about a minute once. After that it applies to everything you write there, and you can forget about it.
The four places
If you paid, you have a version of the file cut for each of these. If you have the free file, use the ChatGPT and Claude exports where they fit and the plain Markdown file everywhere else. Either way it is the same voiceprint underneath.
ChatGPT
chatgpt exportThat box has a hard 1,500-character limit, which is why the ChatGPT export exists: it is the same profile compiled down to fit, with the identity and the mechanics kept and the longer explanations dropped. Paste the whole thing. If you would rather keep your voice off unrelated work, put it in a Project instead (Projects → your project → Instructions) and it applies only in there.
Claude
claude exportProject knowledge holds far more than a custom-instructions box, so the Claude export keeps the calibration passages the compressed one has to drop. If you want to switch the voice on and off rather than have it always on, save it under Settings → Capabilities → Styles as a custom style and pick it per conversation.
Gemini
gemini exportA Gem is a saved persona, so this is the closest fit of the four: name it after yourself, paste the export into Instructions, and start your writing sessions from that Gem rather than from a blank chat. Gemini also takes the same file in Saved Info if you want it applied everywhere.
Coding agents
agents exportThis is the one nobody else ships, and it is the one that costs you nothing to keep current: the file sits in version control, so it rides along on every request and your commit messages, PR descriptions and docs come out in your voice instead of the house one. Claude Code and Cursor both read a rules file from the repo root; Copilot uses .github/copilot-instructions.md.
What the first draft should look like
Ask for something you would actually write, not a test. The change you are looking for is mechanical rather than dramatic: sentences that vary in length instead of settling into one comfortable size, the words on your kill list absent, and the courtesy formula in front of the answer gone. In the study behind this, no file put 0 of 15 drafts inside the writer’s target rhythm and the free file put 13 of 15 there, so the effect is large and it is also specific. The numbers, and what they do not show →
What it will not do is make the model sound like a different writer on a subject it knows nothing about. It is steering how you sound, not what you know.
How big the change is depends on which model you are using, and that is worth knowing before you judge it. We ran the same test across three of them. On one, the untouched model wrote 16.5-word sentences against this writer’s target of under twelve, and the file closed almost all of that gap. On another, the model’s own default already sat inside her target rhythm, so the file had nothing to move and the drafts looked much the same with it and without it. If your writing sits close to how your model already writes, expect a smaller difference — and if it sits far away, expect a large one. All three models, with the arm that told us nothing →
When it misses
It will sometimes. Here is the honest list, roughly in the order these actually happen.
-
The thread has been running a long time and the voice has faded.
Start a new chat. That is prudence rather than a diagnosis, and the honest version is more interesting than the advice: we went looking for that fade and could not pin it down. Across 24 ten-turn sessions, with unrelated questions in between to dilute the context the way real work does, drafts written nine turns after the file went in still landed in the writer’s rhythm 9 times out of 16. Drafts with no file landed 0 times out of 8. There is a downward drift in the numbers as a session runs on, and at this sample size it could equally be noise. So the file is still working late; whether it is working slightly less well, we do not yet know, and we would rather say that than guess. The study, including what it could not settle →
-
It followed the rules and the writing still is not yours.
Usually one or two answers are set further from you than you meant. Re-open your voiceprint, move the dials that feel wrong, and take the file again — it rebuilds instantly and there is no limit on how many times you do it. Hedging, formality and sentence rhythm are the three that most often need a second pass.
-
It is using a word you told it not to.
Add it. The kill list is yours and the file re-compiles with it in place. If you are on the paid file, the same list also drives the linter, so a draft you paste in gets the word flagged by name rather than scored.
-
It sounds like you, but wrong for this piece.
That is what the context variants are for: the same voice cut for email, for social, for long-form, for technical writing. Your Substack voice and your invoice-chasing voice are not the same voice, and one file trying to be both will be slightly wrong in each.
-
You pasted it and nothing changed at all.
Check it actually saved — the custom-instructions box in particular silently keeps only the first 1,500 characters, which is why the compressed export exists. If you pasted the full Markdown file in there, most of it was discarded. Use the ChatGPT export instead.
Still not right
Write to us. A real person reads it, and a voiceprint that does not sound like you is worth hearing about more than almost anything else we could be told. The contact page → Refunds run fourteen days, no questions, and you keep the file either way.