Privacy Policy
Last updated: July 1, 2026
Overview
uListen ("the service", "we", "our") is available as a free Chrome browser extension, an Android mobile app, and an iOS mobile app. uListen makes YouTube podcasts searchable and memorable with AI-powered summaries, searchable transcripts, speaker-labeled captions, and smart playback controls for YouTube videos. On Chrome, the extension only operates on YouTube (youtube.com) and cannot access your browsing activity on other websites. This privacy policy explains what data we collect, how we use it, and your rights regarding your data.
Summary: We collect your email address to identify your account and track usage. Video IDs are sent to check if analysis (summaries, transcripts, captions) is available. Standard server logs (IP addresses, video IDs, search terms, timestamps) are kept for 90 days. We do not sell data or use it for advertising. The iOS app works without any sign-in and never collects an email address.
Privacy at a Glance
Here's how we handle your data:
| Requirement | Our Compliance |
|---|---|
| Collection | Email address (to identify your account), video IDs, catalog search queries, server logs (IP, browser type). Email stored on device and server. Logs deleted after 90 days. |
| Handling | Video IDs used to check if analysis (summaries, transcripts, captions) is available. No profiling or tracking. |
| Storage | Preferences and app data (playback history, saved highlights) on your device only. Server logs auto-delete after 90 days. |
| Sharing | Server logs processed by Google Cloud Platform. Anonymized crash reports from the iOS app processed by Sentry. Video playback in the iOS app streams directly from YouTube (Google), which receives standard playback data. Nothing sold. |
Data Collection
This section describes all data the service (extension and apps) collects and does not collect.
Sent to Our Servers
- ✓Email AddressUsed to identify your account and track usage. Sent via encrypted HTTPS.
- ✓Video IDTo check if analysis (summaries, transcripts, captions) is available for the current video
- ✓Search QueriesWhen you search the podcast catalog, your search terms are sent to find matching episodes. Queries are not stored in our database and are not tied to your account (catalog search works without sign-in); they can appear in temporary server logs that are kept for up to 90 days
- ✓Channel BrowsingWhen you browse a podcast channel, the channel identifier is sent to fetch its episodes
- ✓Server LogsBasic connection info (IP address, browser type) for security and troubleshooting. Deleted after 90 days.
Stored on Your Device Only
- ✓Login DataEmail address and login session
- ✓PreferencesCaption toggle state, caption position, panel width, font size preference, and which tooltips you have seen
- ✓Video DurationTo verify cached analysis matches the current video
- ✓Profile Picture URLYour YouTube profile picture URL is read for display in the account menu. Never sent to our servers.
What We Do NOT Collect
- ✗Your name or physical address
- ✗Cookies or tracking pixels (the embedded YouTube player in the iOS app may set its own cookies; see Data Sharing)
- ✗Browsing history outside YouTube
- ✗Passwords or payment card numbers
Data Handling
Data is transmitted to our server via encrypted HTTPS:
- Email address: Sent once during authentication to identify your account
- Video IDs: Sent when you visit a video to check if analysis (summaries, transcripts, captions) is available
- Catalog requests: The extension and apps fetch the list of supported podcast channels, episode details for individual channels, and search results when you search the catalog
- Search queries: Sent when you search the podcast catalog to return matching episodes. Catalog search works without sign-in, so queries are not tied to your account. Queries are not stored in our database, but they can appear in temporary server logs that are kept for up to 90 days. This includes the host and guest name picker in the mobile apps, which sends the name text as you type so we can suggest matching people; these lookups are handled the same way as other search queries. On iOS, recent search text can also appear in a crash report's activity breadcrumbs (see Crash Reporting)
- Video playback (iOS): Episodes stream directly from YouTube inside the app. Our servers never proxy or log the video stream. While a video plays, YouTube receives the same standard playback data as when watching on youtube.com
All transmission uses TLS 1.2+ encryption. Your email is used only to identify your account and track usage, never for marketing or sold to third parties.
Data Storage
All data storage is designed to be minimal and privacy-preserving.
Local Storage (Your Device)
The following data is stored locally in Chrome on your device:
| Data | Purpose |
|---|---|
| Login data | Email and login session |
| Caption toggle state | Remember if you turned captions on/off |
| Panel preferences | Panel width and font size preference |
| Feature and tooltip state | Remember which features you've used and tooltips you've seen |
Preferences, panel preferences, and tooltip state never leave your device. Your email is also sent to our server to identify your account. All local data is automatically deleted when you uninstall the extension.
Browser Session Storage (Temporary)
Video duration is stored temporarily in your browser's session storage to verify cached analysis matches the current video version. This data:
- Expires after 60 seconds
- Is cleared when you close the browser tab
- Is NOT transmitted to our servers
Catalog navigation state (which episode you last browsed) is also stored temporarily in session storage to show a navigation prompt when returning to a previously viewed podcast. This data is cleared when you close the tab and is never sent to our servers.
Analysis Data (In-Memory Only)
Video analysis data, including transcripts, summaries, and speaker information, is held in browser memory while you're viewing the video. This data is not saved to disk and is cleared when you navigate away or close the tab.
Server Logs (Temporary Storage)
Server logs containing IP addresses, video IDs, and catalog search terms are automatically deleted after 90 days. These logs are not used for tracking. Search terms in these logs are not tied to your account; catalog search works without sign-in.
Data Retention Summary
| Data Type | Location | Retention |
|---|---|---|
| Email address | Your device + Our servers | Until account deletion request |
| Local preferences | Your device | Until uninstall |
| Server logs (including search query text) | Our servers | 90 days max |
| Android cached episodes | Your device (SQLite) | Until app uninstall or cache clear |
| Android playback history | Your device (SQLite) | Until app uninstall or cache clear |
| iOS cached episodes & playback history | Your device (SQLite) | Until app uninstall |
| iOS saved highlights | Your device (SQLite) | Until app uninstall |
| Crash reports (Android) | Firebase Crashlytics (Google) | 90 days |
| Crash and diagnostic reports (iOS) | Sentry | Up to 90 days |
Data Sharing
We do not sell user data or share it for advertising purposes.
Infrastructure Providers
- Google Cloud Platform: Server logs (IP addresses, video IDs, timestamps) for hosting infrastructure
- Google Analytics: Website analytics for ulisten.ai (not the extension)
- Chrome Web Store Analytics: Standard install/uninstall metrics provided by Google's store platform
- Firebase Crashlytics: Anonymized crash reports from the Android app (no PII included)
- Sentry: Anonymized crash reports from the iOS app (no PII included, not linked to your identity)
- YouTube (Google): Episodes in the iOS app play in an embedded YouTube player. Video streams directly from YouTube, so while a video plays YouTube receives standard playback data (your IP address, which video you watch, and play/pause/seek events) and may set cookies in the app's browser storage, the same as when watching on youtube.com. Episode thumbnails also load directly from YouTube's image servers (i.ytimg.com). Our servers never proxy or see the video stream. Google's handling of this playback data is described in the Google Privacy Policy
- Extension Error Reports: Anonymized diagnostic data from the Chrome extension (extension version, page element visibility, extension logs) stored in Google Cloud Storage
What We Do NOT Share
- No data is sold to advertisers or data brokers
- No data is shared for marketing purposes
- No data is provided to other third parties
Chrome Permissions Explained
The extension requests these permissions for the following specific purposes:
| Permission | Why We Need It |
|---|---|
| activeTab | To detect when you're watching a YouTube video and display the uListen panel, captions, and playback controls on that tab |
| storage | To save your preferences (panel width, caption settings, tooltip state) locally on your device |
| youtube.com | To inject the uListen panel, captions, and playback controls onto YouTube video pages |
| api.ulisten.ai | To fetch video analysis data (transcripts with speaker names, episode summaries, key takeaways, notable quotes, and chapter markers) and the podcast catalog (channel list, episode details, and search results) from our server |
For future premium features (usage tracking, subscriptions), the extension may request additional permissions to read your Chrome profile email for account identification.
Android App Permissions Explained
The Android app requests these permissions for the following specific purposes:
| Permission | Why We Need It |
|---|---|
| Internet | Fetch podcast analysis data from our servers |
| Notification Listener | Detect supported podcast episodes in YouTube. Only YouTube notification titles are read for local episode matching. All non-YouTube notifications are immediately discarded without being read, stored, or transmitted. |
| System Alert Window | Show a floating overlay with AI analysis when a supported podcast is detected |
| Foreground Service | Keep the detection overlay running while watching YouTube |
| Media Playback | Android Auto podcast browsing and TTS narration |
| Notifications | Display required foreground service notification |
iOS App Permissions Explained
The iOS app requests a single permission, for the following specific purpose:
| Permission | Why We Need It |
|---|---|
| Photos (Add Only) | To save highlight cards you create to your photo library. The permission prompt reads: "Save highlight cards to your photo library." It is requested only the first time you save a highlight card, and it is add-only: the app can add images to your Photos library but can never read, browse, or list your photos. |
The iOS app requests no other permissions: no notifications, no camera or microphone, no location, and no tracking. No App Tracking Transparency prompt appears because uListen does not track you across other companies' apps or websites; the embedded YouTube player's own data collection is described under Data Sharing.
Notification Data Handling (Android)
The Android app's Smart Detection feature reads YouTube notification titles to identify when a supported podcast episode is playing. This data is handled as follows:
- Notification titles from YouTube are used for local fuzzy matching only and are never sent to our servers
- Non-YouTube notifications are discarded immediately in the first line of our notification handler without being read, stored, or transmitted
- No notification content is logged, cached, or persisted in any form
Android Local Data Storage
The following data is stored locally on your Android device:
| Data | Storage | Purpose |
|---|---|---|
| JWT token | EncryptedSharedPreferences | Authentication session |
| Cached episodes | SQLite | Offline episode access |
| Playback history | SQLite | Resume playback and widget display |
| Title index | SQLite | Local episode detection matching |
| Detection preferences | SharedPreferences | Remember detection settings |
| Widget state | DataStore | Home screen widget episode display |
All local data is deleted when you uninstall the app. To clear data without uninstalling, use Android Settings > Apps > uListen > Clear Data.
iOS Local Data Storage
The following data is stored locally on your iOS device:
| Data | Storage | Purpose |
|---|---|---|
| Cached episodes | SQLite | Offline episode access |
| Playback history | SQLite | Resume positions and continue listening |
| Saved highlights | SQLite | Quotes you keep (quote text, episode and channel names, timestamps) |
| Favorite and dismissed channels | SQLite | Pin channels you follow and hide channels you dismiss |
| Episode title index | SQLite | Snapshot of the public catalog that powers offline and local search |
| Settings | UserDefaults | Theme, text size, playback speed, default player mode, auto-skip, and captions toggle (changeable in Settings) |
Episode titles and channel names from the public catalog are also indexed on-device with Apple's CoreSpotlight so episodes appear in iOS search (Spotlight). This index stays on your device, is never transmitted, and is removed when you uninstall the app. The Live Activity and Dynamic Island display show transient analysis progress only: the state ends when analysis completes or the app closes, and nothing is stored or transmitted.
None of this data is synced to any server by uListen. Like most apps, this local data is included in your device's own iCloud or computer backups if you have backups turned on; backups are controlled by you and Apple, we never receive them and cannot read them, and a copy may remain in your backups until those backups are replaced or deleted. All local data is deleted when you uninstall the app; the iOS app does not currently offer a separate clear-data option. Cookies set by the embedded YouTube player (see the Data Sharing section) live in the app's web storage and also persist until you uninstall the app.
Account & Email
The service's core features, including captions, summaries, transcripts, and podcast catalog, work without any account or sign-in. When you visit a supported video, the service fetches analysis using only the video ID.
For premium features (usage tracking, subscriptions), we may access your email address:
- Chrome extension: Read from your Chrome browser profile (no separate sign-in required)
- Android app: Obtained via Google Credential Manager sign-in (Google Account picker)
- iOS app: No sign-in exists in the iOS app today. Every feature works without an account, and the iOS app never collects an email address
- Sent to our server to identify your account
- Stored locally on your device for convenience
- Never used for marketing or shared with third parties
If you're not signed in, the service still works for basic features.
AI-Generated Content
The service displays AI-generated summaries, transcripts, and speaker identifications for supported podcast episodes. This content is pre-processed on our servers from publicly available video content. We do not process your personal viewing activity with AI.
AI-generated content is provided for informational purposes. Summaries are interpretive and highlight what our AI identifies as key points. Transcripts are high-accuracy but may contain errors, particularly with technical terms or proper nouns. Speaker identification is automated and may occasionally misattribute dialogue.
If you notice errors in AI-generated content, please contact us at support@ulisten.ai.
Data Security
Data in Transit
All communication between the extension or apps and our servers uses HTTPS (TLS 1.2+) encryption to protect data during transmission.
Data at Rest
All data stored on our servers is encrypted at rest using AES-256 encryption:
- Server logs are stored in Google Cloud Platform with automatic AES-256 encryption
- All encryption keys are managed by Google Cloud Platform's security infrastructure
Additional Security Measures
- Our servers are hosted on secure cloud infrastructure with industry-standard security practices
- Server logs containing IP addresses are automatically purged after 90 days
- Local data stored on your device is protected by your browser's security measures
Crash Reporting (Android & iOS)
The Android app uses Firebase Crashlytics for crash reporting in production builds only. When a crash occurs:
- An anonymized crash report is sent to Firebase Crashlytics, including stack traces and device information (OS version, device model)
- No email address or personally identifiable information is included in crash reports (PII is stripped before sending)
- Crash reporting is disabled in debug/development builds
- Crash data is retained by Firebase Crashlytics for 90 days
The iOS app uses Sentry for crash reporting and performance diagnostics in production builds only. When a crash occurs:
- An anonymized crash report is sent to Sentry, including stack traces, device information (OS version, device model), and recent in-app activity breadcrumbs: a short rolling log of screens viewed, log messages, and the web addresses of the app's recent requests to our servers, which can include catalog search terms you typed shortly before the report
- No email address or personally identifiable information is included in crash reports, and crash data is not linked to your identity
- Crash data is not used for tracking or advertising
- Reports are grouped under a random identifier created when the app is installed. It is not derived from you or your device, is used only to group reports from the same installation, and resets if you delete and reinstall the app
- Crash reporting is disabled in debug/development builds
- Crash data is retained by Sentry for up to 90 days
Beyond crashes, the iOS app also reports to Sentry when the app hangs or is terminated by the system, and when you tap a special uListen diagnostic link that we may send you during a support conversation (a diagnostic report is never triggered automatically). Each time you launch the app it also sends a brief anonymous session signal (app version, OS version, device model) so we can measure crash-free usage. These diagnostic reports follow the same rules as crash reports: no email address, no identity linkage, and retention of up to 90 days.
Extension Error Reporting
The Chrome extension includes automatic error reporting to help us detect and fix issues that prevent the extension from working correctly:
- When a feature fails to load (e.g., the panel or player controls do not appear), an automatic report is sent containing the extension version, Chrome version, and which page elements were present or missing
- You can also submit a manual bug report from the panel header, which includes the above plus recent extension log entries and basic settings
- No personal data is included in error reports: no email address, no authentication tokens, no browsing history, and no content from other extensions or YouTube's internal logging
- Log entries are scoped to our own extension output only (entries prefixed with [uListen-])
- Error reports are stored in Google Cloud Storage and retained for 90 days
Your Rights
Under GDPR, CCPA, and similar privacy regulations, you have rights regarding your personal data. While server logs contain IP addresses (which may be considered personal data under some regulations), here is how we handle your rights:
- Right to Access: Contact us to request any data associated with your email address or IP
- Right to Deletion: You can delete your account at any time. Server logs are automatically deleted after 90 days.
- Right to Deletion (iOS app): There is no account to delete. Uninstalling the app removes all data stored on your device, and the only server-side records of your use (server logs and anonymous crash and diagnostic reports, which are keyed to a random identifier we cannot link to you) delete automatically within 90 days
- Right to Portability: Contact us if you need a copy of your data
- Right to Opt-Out: You can uninstall the extension or the mobile apps at any time
To remove all local data, simply uninstall the extension from Chrome or the app from your Android or iOS device. This will delete all locally stored preferences and data.
To exercise these rights, contact us at support@ulisten.ai
Google API Compliance & Limited Use
The use of information received from Google APIs adheres to the Chrome Web Store User Data Policy, including the Limited Use requirements:
- ✓We do NOT use data for personalized advertisements
- ✓We do NOT sell or transfer data to third parties, data brokers, or advertisers
- ✓We do NOT use data for credit-worthiness or lending assessments
- ✓We do NOT allow humans to read user data except for:
- Aggregated, anonymized analytics
- Security investigations with user consent
- Legal compliance requirements
Children's Privacy
uListen is not directed at children under 13, and we do not knowingly collect personal information from children. If you believe a child has provided us personal information, contact us at support@ulisten.ai and we will delete it.
Changes to This Policy
We may update this privacy policy from time to time. If we make significant changes, we will update the "Last updated" date at the top of this page. We encourage you to review this policy periodically. Continued use of the service after changes constitutes acceptance of the updated policy.
Contact Us
If you have questions, concerns, or requests regarding this privacy policy or the service's data practices, please contact us at: support@ulisten.ai
Developer Information
uListen is developed and maintained by the uListen team.
Website: https://ulisten.ai