← Back to PhraseFlow AI
Privacy Policy
Last updated: September 10, 2025
1. Introduction
PhraseFlow AI ("we," "our," or "us") is committed to protecting your privacy. This Privacy Policy explains how we collect, use, and safeguard your information when you use our Chrome browser extension.
2. Information We Collect
2.1 Text Content Processing
We process text that you explicitly select and request to be transformed through our AI features. This text is processed according to your chosen AI backend:
- Local Processing: When using WebLLM or ONNX models, text is processed entirely on your device and never transmitted to external servers.
- Cloud Processing: When using Azure OpenAI, Google Gemini, or OpenAI services, text is sent to the respective service providers you configure.
- Ollama Processing: When using Ollama, text is sent to your configured Ollama server endpoint.
2.2 Stored Data in Browser
We store the following data locally in your browser using Chrome's storage APIs:
2.2.1 Extension Settings (chrome.storage.sync)
- AI Configuration: azureOpenAIKey, azureOpenAIEndpoint, azureOpenAIVersion, azureOpenAIModel
- OpenAI Settings: openaiAPIKey, openaiModel
- Google Gemini Settings: geminiAPIKey, geminiModel
- Ollama Settings: ollamaEndpoint, ollamaModel
- WebLLM Settings: webllmModel, visionModel
- Backend Selection: backendType (webllm, azure, openai, gemini, ollama)
- RAG Settings: ragDistanceThreshold, ragTopN, ragIncludeAllResults
- Query Expansion: enableQueryExpansion, queryExpansionVariations
- UI Preferences: showGlobalAIButton
- Speech Recognition: enableSpeechRecognition, microphoneGain, confidenceThreshold
- Audio Settings: enableEnhancedAudio, speechLanguage
2.2.2 Analytics Data (chrome.storage.local)
- Client ID: phraseflow_ga_cid (unique identifier for analytics)
- Session Data: session_id, engagement_time_msec
2.2.3 Chat History (IndexedDB)
We store chat conversations per domain in IndexedDB:
- Message ID: Unique identifier for each message
- Domain: Website domain where conversation occurred
- Query: User's question or request
- Response: AI-generated response
- Timestamp: When the conversation occurred
- Model: Which AI model was used
2.2.4 Vector Database (RxDB - Memory Storage)
We store processed content in a local vector database for RAG (Retrieval-Augmented Generation):
- Operations: Text transformations (id, type, input, output, vector embeddings, createdAt)
- Embeddings: Vector representations of text (id, embedding array)
- Items: Scraped content (id, text, markdown, actionType, createdAt, contentType, pageUrl, pageTitle, metadata)
- Metadata: contentType, language, wordCount, readingTime, lastModified, author, description
2.3 Usage Analytics (Google Analytics 4)
We collect anonymized usage data through Google Analytics to improve our service. Important: We only track interactions within the PhraseFlow AI plugin itself, not your general browsing behavior or activities on websites.
- Extension Events: extension_load, extension_install, extension_update, session_start, session_end
- Plugin UI Interactions: popup_open (PhraseFlow popup), page_view (extension pages), settings_saved, webgpu_status_detected
- Context Menu Usage: context_menu_ask_ai, context_menu_add_to_context, context_menu_analyze_image, context_menu_transformation (only when you use PhraseFlow's right-click options)
- AI Interactions: transformation_performed, ai_ask_bar_submit, ai_ask_bar_response_received (only when you use PhraseFlow's AI features)
- Text Operations: edit_result_inserted, edit_result_shown_only, edit_result_user_edited (only when you use PhraseFlow's text transformation features)
- Data Management: page_context_cleared, webllm_cache_cleared (only when you use PhraseFlow's context management)
- Performance: performance_metric, extension_error, service_worker_error (only PhraseFlow-related performance and errors)
- User Engagement: user_engagement, feature_usage, user_preference (only engagement with PhraseFlow features)
- Device Information: WebGPU support, browser capabilities (for PhraseFlow's local AI features)
- No Browsing Tracking: We do not track your browsing history, website visits, or activities outside of PhraseFlow AI
- No Personal Data: No personal information, text content, or identifiable data is included in analytics
3. How We Use Your Information
We use the collected information for the following purposes:
3.1 Core Functionality
- Text Processing: Transform selected text using your chosen AI backend
- Chat History: Maintain conversation context per domain for better AI responses
- RAG Operations: Store and retrieve relevant content for intelligent question answering
- Settings Persistence: Remember your preferences and configurations
3.2 Service Improvement
- Performance Monitoring: Track extension performance and identify bottlenecks
- Error Debugging: Log and analyze errors to fix issues
- Feature Usage: Understand which features are most valuable to users
- Device Capabilities: Adapt UI based on WebGPU support and other capabilities
3.3 Analytics and Insights
- Plugin Usage Patterns: Understand how users interact with PhraseFlow AI features specifically
- Feature Adoption: Track which AI backends and PhraseFlow features are most popular
- Plugin Session Analysis: Monitor user engagement with PhraseFlow AI functionality
- Quality Metrics: Measure success rates of PhraseFlow's text transformations
- Error Tracking: Identify and fix issues within the PhraseFlow AI extension
- No Website Tracking: We do not analyze your browsing behavior or website usage patterns
4. Data Storage and Security
4.1 Local Browser Storage
All user data is stored locally in your browser using Chrome's storage APIs:
- chrome.storage.sync: Extension settings, API keys, preferences (synced across devices)
- chrome.storage.local: Analytics client ID, session data (device-specific)
- IndexedDB: Chat history, conversation data (domain-specific)
- RxDB Memory Storage: Vector embeddings, processed content, RAG data (session-only)
4.2 Data Retention
- Settings: Stored until you change them or uninstall the extension
- Chat History: Stored per domain until you clear it manually
- Vector Database: Stored in memory during browser session, cleared on browser restart
- Analytics Data: Client ID persists across sessions, session data expires after 30 minutes
4.3 Cloud Services
When you choose to use cloud AI services, your text is processed by third-party providers according to their respective privacy policies:
5. Data Sharing
We do not sell, trade, or otherwise transfer your personal information to third parties except:
- When you explicitly choose to use cloud AI services
- For anonymized analytics data (no personal information included)
- When required by law or to protect our rights
6. Your Rights and Choices
You have the following rights regarding your data:
6.1 Data Access and Control
- View Settings: Access all stored settings through the extension popup
- Chat History: View and clear chat history per domain through the chat interface
- Clear Data: Clear all stored data by uninstalling the extension
- Selective Deletion: Clear specific data types (chat history, settings) individually
6.2 Privacy Controls
- AI Backend Choice: Choose between local (WebLLM/ONNX) or cloud processing
- API Key Management: Control which cloud services have access to your data
- Analytics Opt-out: Disable analytics data collection (note: this may affect error reporting)
- Speech Recognition: Enable/disable microphone access and speech processing
6.3 Data Portability
- Settings Export: Your settings are stored in Chrome's sync storage and can be accessed across devices
- Chat History: Stored locally in IndexedDB, accessible through browser developer tools
- No Data Export: We do not provide data export functionality, but all data is stored locally
7. Children's Privacy
Our service is not intended for children under 13. We do not knowingly collect personal information from children under 13.
8. Changes to This Privacy Policy
We may update this Privacy Policy from time to time. We will notify you of any changes by posting the new Privacy Policy on this page and updating the "Last updated" date.
9. Contact Us
If you have any questions about this Privacy Policy or our data practices, please contact us at:
10. Compliance
This Privacy Policy complies with applicable data protection laws and Chrome Web Store requirements. By using our extension, you consent to the collection and use of information as described in this policy.
© 2025 PhraseFlow AI. All rights reserved.