Privacy Policy — Chattero
Last updated and effective: September 24, 2026
Chattero is an independent Twitch chat client for iPhone and iPad, developed by Marian Leontiev ("we" or "the developer"). This policy covers the Chattero app, chattero.app, and support communications. For questions or privacy requests, email leontievmarian@gmail.com.
At a glance
- Chattero has no advertising or embedded third-party analytics SDK, and we do not sell personal data or track you across other companies' apps and websites for advertising.
- Your device connects directly to Twitch and community services to provide chat, emotes and related features. Those services receive the information needed for the requests, including your IP address.
- Account credentials, settings and optional chat logs are stored on your device. We do not operate a server that stores your Twitch credentials or a copy of your chats.
- We do receive information you send to support and beta-testing information provided through Apple's TestFlight. These are explained below.
- Removing a connected account, deleting local data and deleting your Twitch account are different actions. See Your choices and deletion below.
Information on your device
Sign-in and account details. Signing in is optional for reading public chat. Twitch handles authentication on its own sign-in page; Chattero does not receive your Twitch password. The app receives an OAuth access token and account information such as your user ID, login, display name and chat colour. Tokens are stored in the iOS Keychain with device-only protection and no Keychain synchronisation. The app uses them to authenticate requests to Twitch; it does not intentionally send them to emote or other community services.
Settings and saved content. The app stores preferences, connected-account details, channel/session information, filters, highlights, local blocked-user names, nicknames, notes and colours you assign to other users. Downloaded emotes, badges and other images may be cached to make the app faster. Received chat messages and whispers are processed to display conversations and related features.
Optional chat logs. Chat logging is off by default. If enabled in Settings → Logging, the app writes received messages to local files, which can include usernames, timestamps, channel names, whispers and other chat content. Turning logging off stops new logging; it does not delete existing files. Logs have no automatic age-based deletion. The chat logger marks its log directory as excluded from device backups.
Image uploads. If you enable and configure an image uploader, the app sends the image you select to that destination. A local upload history records the channel, time, image URL and any deletion URL returned by the service. This history is separate from the chat-logging switch. Custom uploader settings, including headers you enter, are saved in app settings.
Local diagnostics. Apple's MetricKit supplies crash and performance reports that Chattero stores on the device. The app keeps up to 20 metric files and 20 diagnostic files, replacing older files as new ones arrive. This local archive is not uploaded automatically by Chattero. Settings → About → Prepare Diagnostics prepares an archive; sharing it is a separate action you choose.
Notifications. If you allow notifications, Chattero can create local alerts containing channel names, stream titles or highlighted message text. You can control notifications and lock-screen previews in your device's notification settings.
Other app settings and files may be included in device backups under your Apple settings. Exported files and backups are separate copies and are not erased by an in-app deletion action.
Services contacted by the app
These requests go directly from your device to the relevant service. In addition to the feature-specific information below, a recipient can receive your IP address and ordinary connection/request details, such as request time and client headers. Public usernames and channel IDs can still identify people. The services have their own data-handling and retention practices.
- Twitch: receives authentication requests and tokens, requested user/channel IDs, messages and whispers you send, and actions such as blocking or moderation. Twitch supplies chat, account details, emotes, badges, stream information and notifications of Twitch events. Public chat messages are visible to others and may be retained by Twitch or other chat participants. See Twitch's Privacy Notice.
- BetterTTV, FrankerFaceZ and 7TV: receive channel/user or emote-set identifiers to return emotes, badges and live updates. Images are also downloaded from their content-delivery servers. When you send chat messages, the enabled Tell BTTV I am here and Tell 7TV I am here features can additionally send your Twitch user ID or resolved 7TV user ID together with the channel ID to support badges and personal emotes. Both presence switches are on by default and are available in Settings → General → Presence. See BetterTTV privacy, FrankerFaceZ privacy and 7TV privacy.
- Chatterino badges (
api.chatterino.com): receives a request for the public community-badge list. The app does not include your Twitch token or account identifier in that request. - Recent Messages (
recent-messages.robotty.de): receives the channel name to return recent public chat messages when you connect. Load message history on connect, in Settings → General, is on by default and can be turned off. - IVR (
api.ivr.fi): receives the login of the user you look up and the channel name to provide subscription/follow-age information in user cards. - Pronouns (
api.pronouns.alejo.io): receives a Twitch login when pronoun lookup is enabled and the app requests that user's pronouns. Pronoun lookup is off by default. - Link previews (
braize.pajlada.com): receives the URL being previewed, which can itself contain personal information. Settings → General → Link previews is off by default. The resolver may contact other services to generate a preview, and your device may fetch its thumbnail from another host. The provider's privacy policy says preview URLs and results are cached for up to 24 hours. Opening a link also contacts the destination website. - Your configured image host: receives selected image content and configured request headers when you upload. The uploader is off by default in Settings → External tools. The host's own policy applies; removing Chattero's local upload history does not delete the hosted image. Use the host's deletion link or contact the host to remove it.
Twitch and community-service data is not automatically copied to the developer. Third-party processing can take place outside your country. For information or deletion requests concerning data those services hold, use their privacy/contact channels; you can also contact us for help identifying the relevant service.
Website and sign-in redirect
We operate chattero.app on Hetzner infrastructure behind Cloudflare. Visiting the website or the sign-in callback involves requests processed by those providers. They can handle IP addresses, requested addresses, browser information and security/operational data to deliver and protect the site. Our origin web-server configuration does not enable HTTP access logging; this does not mean Cloudflare or the hosting provider processes no connection or security data. Their retention practices are described in Cloudflare's Privacy Policy and Hetzner's Data Privacy Policy.
After Twitch sign-in, chattero.app/auth/callback returns the result to the app. The access token arrives in the URL fragment, which browsers do not include in HTTP requests to the website or Cloudflare. The callback script reads it locally, passes it to Chattero and removes the fragment from the browser address/history entry. The callback does not intentionally send the token to a developer-operated server.
The site's own pages do not include advertising or analytics scripts. Twitch sign-in, external links and infrastructure security features are subject to their respective providers' policies.
Support, diagnostics and TestFlight
Contacting us. When you email support, we receive your email address, message and attachments through our email provider, Google/Gmail. Settings → About → Report a bug prepares a message containing the app version/build, operating-system version and device model. You choose whether to send it and can edit it first. Logs, screenshots and diagnostic archives are sent only if you choose to attach or share them. They can contain account or conversation information, so review what you share and never send a password or access token. See Google's Privacy Policy.
Apple reporting. Apple's App Store diagnostic sharing depends on your Apple/device settings. TestFlight is different: Apple automatically collects beta crash logs and usage information and shares them with the developer. Tester identity/contact details may also be available depending on the invitation and feedback you provide. This is separate from Chattero's local MetricKit archive. See TestFlight and your data and Apple's TestFlight terms. To leave the beta, choose Stop Testing on Chattero's page in TestFlight and remove the beta app.
We use support correspondence and reports to answer requests, investigate issues and improve Chattero. We keep them for as long as needed for that work and any applicable legal obligations, rather than for advertising. You can request deletion of copies we hold by email. Data held by Google, Apple or other providers is also subject to their own retention and deletion processes.
Your choices and deletion
- Remove a saved login: swipe its row in Settings → Accounts and choose Remove. This removes that account's saved credentials and account entry locally. It does not request revocation at Twitch or clear the shared chat logs and other saved content.
- Delete Account in Chattero: select the account in Settings → Accounts, then choose Delete Account. The app requests token revocation from Twitch, removes the selected account's credentials and clears the shared local chat logs (including logged whispers), image-upload history, user notes/colours, saved session file and local diagnostics. These shared files are cleared across the app, not just for the selected login. Other connected accounts, general preferences and image caches are not all reset by this action. Continued app use can create new session data, logs or diagnostics.
- Confirm Twitch access is revoked: revocation requires a successful network request; local cleanup continues if it fails. Open Twitch Settings → Connections and disconnect Chattero to revoke access directly with Twitch.
- Delete chat logs: choose Settings → Logging → Delete all chat logs. This also removes local upload history. Turn logging off if you do not want new logs created.
- Delete the app: this removes its on-device app container. Offloading the app keeps its documents and data. Keychain credentials can survive uninstall, so remove connected accounts before uninstalling and revoke access on Twitch. Backups, exported files, messages already sent to Twitch, hosted images and support correspondence are not deleted by uninstalling.
- Delete your Twitch account: Chattero does not create a separate Chattero service account, and its Delete Account button does not delete your Twitch account. To delete Twitch itself, use Twitch's account-deletion page.
- Limit optional requests: turn off presence sharing, history loading or link previews using the controls above, and disable the image uploader when you do not want to use it. These controls stop future feature requests; they do not erase data already held by a recipient.
Privacy requests and children
Depending on where you live, you may have rights to access, correct, delete or receive a copy of personal data we hold, restrict or object to processing, and withdraw consent where processing relies on consent. Contact leontievmarian@gmail.com to exercise these rights. We may need information sufficient to verify that the request concerns your data. You may also complain to your local data-protection authority. We cannot remotely read or erase files stored only on your device or delete data held independently by Twitch and other services.
Chattero is not directed to children under 13. Use of Twitch and TestFlight must meet their age requirements and any applicable parental-consent requirements. If you believe a child has provided personal information to us, contact us so we can investigate and remove it as appropriate.
Changes and contact
We will update this page and its effective date when our practices change. If a change requires additional notice or consent, we will provide it as required before applying that change.
Developer: Marian Leontiev. Email: leontievmarian@gmail.com. For help using the app, see Chattero Support.