Privacy Policy
Updated October 20, 2026
Poem is a Mac app that turns Claude Code and Codex into chats, with an optional iPhone app. It’s made by Poem Labs. The short version: Poem has no accounts, doesn’t track you, and keeps your chats on your Mac.
The Mac app
Poem runs on your Mac. There’s no Poem account, and Poem doesn’t collect your chats or files. Once a day it sends poem.chat a count of how much it was used (below).
Your chats, settings and logs stay on your Mac, in your Library folder. Logs record things like chat names, folders and errors, never the text of your messages.
Poem runs the unmodified Claude Code and Codex on your Mac, signed in with your own Anthropic or OpenAI account. What you send them goes to Anthropic or OpenAI under their terms and privacy policies, the same as using them in Terminal. Poem never sees, copies or stores your Claude or ChatGPT sign-in.
API keys you add in Poem stay in your Mac’s Keychain and are only handed to Claude Code or Codex.
Poem itself connects to:
- poem.chat, about every 6 hours, to check for a new version of Poem. The request includes Poem’s version number.
- npm’s registry, about every 6 hours, to see if a newer Claude Code or Codex is out.
- poem.chat, once a day, with a count of the day before: minutes Poem was in front, messages and chats messaged, the anonymous ID Poem makes for your Mac and Poem’s version number. Never what’s in your chats, their names or your files.
- Websites you link to. When you send a link, Poem may load the page to show a preview, the way Messages does. Links in replies load only when you click them.
These requests carry your IP address, like any web request, and nothing else about you beyond what each one says above.
Dictation uses Apple’s speech recognition, on your Mac when it can. When it can’t, Apple processes the audio under Apple’s privacy policy.
Poem for iPhone and the relay
Poem for iPhone runs in Safari (or from your Home Screen) and shows your Mac’s chats on your phone. Your Mac and iPhone talk through Poem’s relay, end-to-end encrypted with a key only they have. The key travels inside the pairing code or link and is never sent to a server. Right after pairing, your Mac replaces it with a new one.
The relay can’t read your chats. It sees scrambled data, a random room ID, IP addresses, when and how much data passes, and an anonymous ID Poem makes for your Mac. It keeps nothing after passing a message along, except a note that a pairing code was used, which it deletes after 30 days.
On your iPhone, the pairing key is kept in that browser’s storage, on that device only, where it can’t be read back out. The camera is used only to scan the pairing code. Photos you pick are sent, encrypted, to your Mac.
If you turn on Poem’s voice, your Mac downloads an open-source voice model once, from npm and Hugging Face. Replies are turned into speech on your Mac.
The website
poem.chat’s public pages use Google Analytics to count visits and the Meta Pixel, the X Pixel and the Reddit Pixel to measure our ads on Facebook, Instagram, X and Reddit. All four set cookies, except for visitors in the EU, the UK and Switzerland. The checkout pages also tell Google, Meta and X when a checkout starts and when a trial or a subscription begins, with the plan and its price, and Reddit too. So that an ad blocker doesn’t hide them from the ads, our server also sends Meta, X and Reddit what the pixels send from your browser: each page view, a download, a checkout starting, a trial starting, your first payment and each renewal, with the plan and its price. With each it passes on what the pixels would have sent (IP address, the kind of browser, the pixels’ own cookies and an ad’s click id) and one event id shared with your browser’s copy, so each counts once. For a checkout we keep those for at most two hours, until it finishes or expires. Payments also carry your email and Stripe customer number scrambled (hashed), never in the clear. When a trial turns paid or Pro renews, our server can also tell Google Analytics, under the browser id its cookie gave you at checkout. None of this happens for visitors in the EU, the UK or Switzerland. The Poem app and Poem for iPhone use no analytics or trackers at all.
poem.chat never asks for your email to download Poem. The only email we get is the one you give at checkout, and mail you send to support@poem.chat. If you signed up for Poem news or the early access list before October 20, 2026, we keep that address, when you gave it, and your browser’s user agent (the kind of device and browser), encrypted. There’s no account. We email that list Poem news now and then, and every one of those emails has an unsubscribe link. We may give Meta and X the list in a scrambled (hashed) form, to show Poem ads to you or to people like you, never the addresses of people who signed up from the EU, the UK or Switzerland. We never sell it, and we’ll delete it whenever you ask.
Like any website, our host keeps standard request logs (IP address, time and page) for a short time.
The private Poem preview page loads a font from Google Fonts, so Google sees that request.
Who else is involved
Vercel hosts poem.chat and Poem’s update file, and stores the encrypted signup list.
Cloudflare hosts the relay.
npm answers the version checks. Hugging Face serves the voice model if you turn voice on.
Apple handles dictation when it can’t run on your device.
Resend sends Poem’s emails about your purchase, and Poem news to the list above. When you email support@poem.chat, a copy goes through Resend to our admin, stored encrypted.
Anthropic and OpenAI provide Claude Code and Codex to you directly, under your own accounts.
Google Fonts, on the preview page only.
None of them get your chats from Poem.
Payments
Poem Pro payments are handled by Stripe. When you start a trial, Stripe collects your email, card and billing details under
Stripe’s privacy policy. We never see your full card number.
We use the email you give at checkout for four emails: a reminder if you leave checkout unfinished and a come-back offer after Pro ends, both only if you ticked “keep me updated” and each with an unsubscribe link, a note if a renewal charge fails, and, if you pay monthly, a reminder once a year of what Pro costs and how to cancel. We also keep that address with each step of your checkout (started, left unfinished, trial, paid, canceled), encrypted, so we can see how checkout is going and help you when you write to us; only Poem’s admin can open it. A scrambled (hashed) copy is how we honor an unsubscribe and send the checkout reminder at most once a month.
So Poem knows you have Pro, we keep: the anonymous ID Poem makes for your Mac and a scrambled (hashed) code your Mac makes from its hardware ID, so Pro stays on that Mac (the hardware ID itself never leaves it); your Stripe customer and subscription IDs; the plan, whether it’s monthly or yearly, its status and its dates. Stripe tells us when they change. When you ask to move Pro to a new Mac, we email the address you paid with a link to confirm it.
We keep payment records as long as tax and accounting rules require. Everything else is deleted when you ask.
Children
Poem isn’t meant for children under 13, and we don’t knowingly collect anything from them. If you think a child gave us an email, write to us and we’ll delete it.
Your choices and rights
You can ask what we have about you (a signup entry, and if you started a checkout or bought Pro, the details above), ask us to delete it, or unsubscribe from any email. If you’re in the EU, the UK or California, you have these rights by law, and you can complain to your local data protection authority. We don’t sell or share personal information. The signup list is stored in the United States.
Changes
If this policy changes, we’ll update this page and the date at the top. If a change matters, we’ll say so in the app or by email.
Contact
Questions or requests about your information go to support@poem.chat.