Privacy Policy
Effective September 11, 2026
Picnoto is an iPhone app that turns screenshots into information you can search.
This policy describes what the app and the api.picnoto.app server do
and do not handle, written to match the actual implementation.
Summary
- The original screenshots stay on your iPhone. They are not uploaded to the server.
- When an item is analyzed, the text recognized on your device is sent through the server to an AI model.
- An image is sent, as a downscaled copy, only when it holds almost no text and the device could not read it.
- You use the app without an account. We do not collect your name, email address, phone number, contacts or location.
- There are no ads, and no data is sold or handed over for advertising purposes.
- We do not track you across other companies' apps and websites.
1. What stays on your device
The following never leaves your iPhone. Deleting the app removes it along with them.
- The original files of imported screenshots and images
- Saved items, categories, memos and favorites
- The search index and your search terms
- The raw text recognized on the device (OCR)
- Cached coordinates for places you looked up on a map
Text recognition runs through Apple's on-device feature, and images do not go out over the network during that process.
2. What is sent to the server
Item analysis
When you save an item, the app sends the following to api.picnoto.app.
The server passes it to an AI model (OpenAI), receives structure such as places and products
in return, and does not store the content or write it to logs.
The model is called with store: false so that it is not retained on the
provider's side either.
| What is sent | Why |
|---|---|
| Text recognized on the device | To extract things like place names and areas |
| A downscaled copy of the image (long edge 2048px or less) only when less than 120 characters were recognized |
When text could not be read — a photo-heavy screen, or a decorative typeface — the image is the only clue left |
| The list of your existing category names | So that categories meaning the same thing are not created twice |
| Your language setting (Korean/English) | To produce results in your language |
If the server connection is left empty in the app's settings, the app works using only on-device text recognition, and this transmission does not happen.
Reading captions and slides from public Instagram posts (optional feature)
Only when this feature is enabled on the server, a public Instagram post URL that you shared yourself is sent to a content interpretation provider, which reads that post's caption and image slides for the current analysis request only. For Reels, only the caption is read; video frames and audio are not retrieved.
Launch notification sign-up (optional feature)
When you sign up to be notified about a larger analysis quota, the email address you enter and consent to, along with the plan you chose (Plus or Pro), is sent to the server. This information is used only to announce the launch of that plan, and not for advertising, disclosure to third parties or profiling. You can ask us to delete it at any time through the contact address below.
If the caption holds enough information — a numbered list, for example — only the caption is analyzed. For a photo carousel with no caption or a short one, up to 10 public image URLs may be passed to the AI analysis in order. These URLs, the caption and the provider's response are not stored in Picnoto's server database or logs. For private or deleted posts, or on a server with this feature turned off, no URL interpretation is attempted and the existing on-device flow is kept.
Anonymous usage statistics
To judge whether the app is actually being used, it sends a minimal set of events. The values sent are only a name from a fixed list, a number, and a randomly generated ID. Item names, category names, search terms, recognized text and images are not included by any route, and the server discards anything outside the allowed list.
The random ID created at install time is hashed again with a secret value after it reaches the server and stored that way, so a particular installation cannot be traced back from the stored records. This ID is not an advertising identifier and has nothing to do with any device serial number. Sending statistics can be turned off in the app's settings, and everything still works with it off.
Public collections (only when you create one)
If you choose to share a list as a link, that list's title and item names are stored on the server and visible to anyone with the link. Original images are not included. The page is marked to refuse search engine crawling, and is deleted from the server automatically 90 days after it was created. If you do not share, no item goes out by this route.
Signing in (optional feature)
Signing in is optional. Everything works the same without it. The only thing it changes is that the analysis quota is attached to your account rather than the device; what you have saved stays on the device whether you are signed in or not.
If you use Sign in with Apple or Google, the server takes only the account identifier out of the token issued by the provider and stores it hashed with a secret value. Your email address and name are used only for display inside the app and are not stored on the server.
You can delete your account directly in the app. Settings → Account → Delete Account erases the account information held on the server. Notes and screenshots saved on the device do not belong to the account, so they remain; you can remove them by deleting the items or the app.
3. Permissions
| Permission | Used for | If you decline |
|---|---|---|
| Photos | Read to find newly taken screenshots and ask whether to save them. It is requested after you have saved something once, not on first launch. | You can keep using the share sheet and the photo picker. |
| Notifications | To let you know when unsaved screenshots have piled up. | Only the notifications stop; everything else is the same. |
Photos are only read. Nothing in your photo library is changed or deleted.
4. Retention and deletion
- Images and text used for analysis are not retained once the response has been produced.
- Anonymous statistics accumulate on the server to inform decisions about improving the service, in a form that cannot single out an individual.
- Public collections are deleted automatically after 90 days.
- Deleting an item in the app deletes its original file, recognized text and search index along with it.
- Deleting the app removes everything stored on the device.
- Deleting your account immediately erases the account information held on the server.
- Server data is kept in encrypted backups for disaster recovery, and those backups are deleted after 30 days.
5. Third parties
We use OpenAI for item analysis. Only what is described in section 2 is passed along, and the call is made in a way that requests it not be used for model training. A server with the public Instagram post reading feature enabled passes that post's URL to a content interpretation provider. Beyond this, no ad network, analytics SDK or tracking tool has been put into the app.
6. Children
The app is not directed at children under 14, and we do not knowingly collect personal information from children.
7. Your rights
Most of what is stored is inside your own device, so you can review and delete it directly in the app. For deletion of a public collection left on the server, or any other question, please contact us below. We respond within 30 days of receiving your request.
8. Changes
If what we collect changes, we will update the effective date on this page, and announce significant changes inside the app.
9. Contact
About this translation
This page is an English translation of the Korean original. If the two differ, the Korean version governs.