Effective date: April 2, 2026 · Last updated: April 2, 2026
This Privacy Policy explains how AVCaption ("we", "us", "our") collects, uses, stores, and protects your personal information when you use our encrypted video hosting platform at avcaption.com, dashboard.avcaption.com, and avcaption.com (collectively, the "Service").
This policy applies to two categories of individuals:
By using the Service, you consent to the practices described in this policy. This policy should be read in conjunction with our Terms of Service.
When you register for an account, we collect:
When you upload videos, we process and store:
When you access the dashboard, we automatically collect:
When viewers watch embedded videos, we collect minimal data:
We do not collect viewer names, email addresses, browsing history, or behavioral profiles.
If you subscribe to a paid plan, payment is processed by our third-party payment processor. We do not store credit card numbers, CVVs, or full payment details on our servers.
If you generate an API key, it is displayed once at creation time. We store only a hashed version of the key — we cannot retrieve your original key after generation.
Enterprise users who use AI Studio provide their own API keys for third-party AI services (Anthropic Claude, Google Gemini). These keys are stored encrypted in your account settings and are used only when you explicitly initiate OCR or translation jobs.
| Purpose | Data Used | Legal Basis |
|---|---|---|
| Provide the Service (encode, encrypt, store, stream videos) | Video content, metadata, account info | Contract performance |
| Authentication & account security | Email, password hash, JWT tokens, IP address | Contract performance |
| Analytics dashboards for video owners | Aggregated view counts, timestamps | Legitimate interest |
| Domain restriction enforcement | Referer/Origin headers | Contract performance |
| Abuse prevention & rate limiting | IP address, request patterns | Legitimate interest |
| Account-related communications | Email address | Contract performance |
| AI subtitle extraction & translation | Video frames (OCR), subtitle text (translation) | Explicit user action |
We do not use your data for advertising, sell your data to third parties, or create behavioral profiles.
We do not view, review, or analyze the content of your videos except as technically necessary to provide the encoding service (e.g., FFprobe extracts duration and resolution metadata). We do not perform content moderation scanning unless required by law or in response to abuse reports.
All video segments are encrypted using multi-key batches before storage. Encryption keys are generated using cryptographically secure random number generation and are stored in your video's metadata. This means your video content is encrypted at rest on our CDN — neither CDN operators nor unauthorized parties can view the raw video content without the decryption keys.
Encrypted video segments are stored on Cloudflare R2 with immutable cache headers (max-age=31536000). Segment filenames are randomized hex strings — they do not reveal video titles, order, or content.
If you use AI Studio (Enterprise plan), the following data processing occurs:
We track video view events to provide analytics to video owners. Each view event records:
View events are batched in memory and flushed to our analytics database (ClickHouse) every 10 seconds. This minimizes write load and ensures no individual request is tracked in real-time.
Raw view event data in ClickHouse is retained for 1 year, after which it is automatically purged. Aggregated totals (total view count per video) are retained in the primary database indefinitely.
We do not use Google Analytics, Facebook Pixel, or any third-party analytics or advertising tracking on the dashboard or embed player. All analytics are first-party and self-hosted.
| Data Type | Storage Location | Encryption |
|---|---|---|
| Account data, video metadata | MySQL database | TLS in transit |
| Video segments (HLS) | Cloudflare R2 (300+ global edge locations) | Encrypted at rest + TLS in transit |
| View analytics | ClickHouse database | TLS in transit |
| Passwords | MySQL (bcrypt hashed) | One-way hash (not reversible) |
| API keys | MySQL (hashed) | One-way hash (not reversible) |
X-Content-Type-Options: nosniff, X-Frame-Options, Referrer-Policy: strict-origin-when-cross-originWe use a limited set of third-party services to operate the platform:
| Service | Purpose | Data Shared |
|---|---|---|
| Cloudflare R2 | Video segment storage and global CDN delivery | Encrypted video segments (Cloudflare cannot read content) |
| Google Fonts | Web fonts on landing page only | Standard HTTP request data (IP, user agent) — see Google Fonts privacy FAQ |
| Anthropic (Claude API) | AI subtitle translation (Enterprise, opt-in) | Subtitle text only — using your own API key |
| Google (Gemini API) | AI subtitle translation (Enterprise, opt-in) | Subtitle text only — using your own API key |
We do not integrate with advertising networks, social media tracking pixels, or behavioral analytics platforms.
We do not sell, rent, or trade your personal information. We may disclose your information only in the following circumstances:
| Cookie | Type | Purpose | Duration |
|---|---|---|---|
token |
Strictly necessary | JWT session authentication (HTTP-only, SameSite=Lax, Secure) | Configurable (default 72 hours) |
That is the only cookie we set. We do not use:
The embedded video player (served from avcaption.com) does not set any cookies on viewer browsers. No cross-site tracking occurs through video embeds.
| Data Type | Retention Period | Deletion Method |
|---|---|---|
| Account data (email, username) | Until you delete your account | Account deletion via dashboard |
| Video content (source + HLS segments) | Until you delete the video or account | Video deletion or account deletion |
| Subtitle tracks | Until you delete the track, video, or account | Studio interface or video/account deletion |
| View analytics (detailed) | 1 year (auto-purged from ClickHouse) | Automatic TTL-based purge |
| View counts (aggregate) | Lifetime of the video | Deleted when video is deleted |
| Server logs | 30 days | Automatic rotation |
| OCR temporary frames | Duration of OCR job only | Automatic cleanup after job completion |
| Deleted content | Permanently removed within 30 days | Purged from database, local storage, and CDN |
Depending on your jurisdiction, you may have the following rights regarding your personal data:
To exercise these rights, contact us at [email protected]. We will respond within 30 days. You may be required to verify your identity before we process your request.
If you are in the EEA, you have the rights listed above under the General Data Protection Regulation. Our legal bases for processing are: contract performance (providing the Service), legitimate interest (security, analytics), and consent (AI Studio usage).
If you are a California resident, you have the right to know what personal information we collect, request deletion, and opt out of the sale of personal information. We do not sell personal information.
Video content is distributed globally via Cloudflare R2's CDN network (300+ edge locations). Account data is stored on servers that may be located outside your country of residence. By using the Service, you consent to the transfer of your data to these locations. We ensure that appropriate safeguards are in place for cross-border data transfers.
AVCaption is not intended for users under 18 years of age. We do not knowingly collect personal information from minors. If we become aware that we have collected data from a person under 18, we will promptly delete the account and associated data. If you believe a minor has created an account, please contact us at [email protected].
We may update this Privacy Policy periodically to reflect changes in our practices, technology, or legal requirements. Material changes will be communicated via email or dashboard notification at least 14 days before they take effect. The "Last updated" date at the top of this page indicates when the policy was last revised. Your continued use of the Service after changes constitutes acceptance of the updated policy.
For privacy-related questions, data requests, or concerns, please contact us:
We aim to respond to all privacy-related requests within 30 days.