Privacy Policy
Name coloring pages run in your browser and need no sign-in; the text generator uses Google sign-in. Text prompts go to OpenAI for automated safety moderation and approved prompts go to Cloudflare Workers AI for generation. Photo AI sends one metadata-stripped, resized photo through Cloudflare to OpenAI's GPT Image 1.5 model for each conversion; the photo exists only in temporary memory and is never stored, and the line art is kept privately for up to 24 hours. Only finished line art enters the local Online Coloring handoff after you choose to continue. We use your IP address, a random browser identifier, and daily quota records for text-generation abuse prevention. A signed-in user may explicitly save private coloring artwork to the Service. We also process Google sign-in account data and limited Stripe billing references for optional purchases. We do not sell personal information or use it for advertising.
Effective date: 2026-08-31
This Privacy Policy explains how the PageColor AI team ("we", "us", "our") handles information when you use pagecolorai.com (the "Service"), a service that lets you manually color line-art pages in your browser, create printable coloring pages from text prompts and names, and use Photo AI to convert a selected photo into line art, then repair and fill-test the result locally in your browser. Photo AI (available to eligible paid plans) converts a photo into line art through remote AI processing described in Section 3. Online Coloring accepts supported SVG line-art files and does not require sign-in for local coloring. Name coloring pages also work in your browser; the text-to-coloring generator requires Google sign-in.
1. Information we handle
1.1 Content you provide
- Supported SVG line-art files (Online Coloring): the complete SVG file you select. Your browser reads and validates the file for manual coloring. Selecting or uploading the file does not by itself send it to a generation API, OpenAI, or Cloudflare Workers AI. The complete SVG and your coloring work may then be held in browser storage or, only if you are signed in and explicitly choose Save, transmitted to and stored by the Service as described in Section 3.
- Coloring work data (Online Coloring): source details, palette choice, fill and brush operations, and a last-updated timestamp. If you explicitly choose Save while signed in, we also receive the complete line-art SVG and a PNG thumbnail of the colored artwork.
- Selected photos (Photo AI): when an eligible signed-in user starts a conversion, the browser removes embedded metadata and resizes the photo, then sends this normalized copy to our Service for one AI conversion through Cloudflare to OpenAI's GPT Image 1.5 model. The photo exists only in temporary memory during processing and is never written to our storage, databases, logs, or analytics. The derived line art is stored in private object storage for up to 24 hours so an interrupted conversion can be recovered, and is deleted after you continue to coloring or when the time limit expires. An explicit "Save to my account" action in Online Coloring stores the line art and your coloring work only — never the original photo.
- Text prompts (text-to-coloring tool): the words you type to describe the coloring page you want.
- Names (name coloring tool): the name you enter is rendered in your browser and is not sent to our generation API.
1.2 Information collected automatically
- IP address — used for rate limiting (daily free quota) and abuse prevention.
- Random browser identifier — the app creates a random identifier named acp_client_fingerprint_v1 in localStorage and sends it with generation requests for rate limiting and abuse prevention as a fallback identity when you are not signed in.
- Quota records — UTC quota day, a SHA-256 identity hash derived from IP address and the random browser identifier (or an IP-only fallback), or — when you are signed in — an identity keyed to your Google account ID instead; plus used/reserved counters, reservation identifiers and status, expiry, and timestamps are stored in Cloudflare D1.
- Technical request data — Cloudflare may process ordinary request, security, and infrastructure logs needed to deliver and protect the Service. PageColor AI does not load an analytics provider or collect product analytics events in v0.
1.3 Account information (Google sign-in)
- Google sign-in data — when you sign in with Google, we receive from Google your account subject identifier (a stable ID Google assigns to your account), your name, your email address, and your profile picture URL. We store these, together with sign-in timestamps, in Cloudflare D1. We do not receive or store your Google password.
- Sign-in session — an encrypted session cookie keeps you signed in. It is a signed token (JWT); we do not keep a server-side session store.
The Service offers optional paid purchases processed through Stripe-hosted Checkout and billing pages. Payment card details are entered on Stripe-hosted pages and are never seen or stored by us. We store limited billing records needed to provide and administer paid access, including Stripe customer, subscription, and order references; plan and billing status; and subscription, refund, dispute, and billing timestamps. Your email address may be passed to Stripe through its dedicated customer email field to send receipts; it is not placed in payment metadata. We do not ask for government identifiers or tax identification numbers. Technical data, Google sign-in data, billing records, and content described above may constitute personal data under some laws.
2. How we use information
- To operate Online Coloring, Photo AI, and the separate text and name page-making tools.
- To read and validate supported SVG line-art files locally for manual coloring.
- To sign you in via Google, keep your session active, and recognize your account across visits.
- When you explicitly choose Save while signed in, to store, retrieve, update, and delete your private coloring artworks.
- To enforce the daily free quota and prevent abuse (IP + fingerprint counters).
- To convert an eligible user's photo into line art through Cloudflare and OpenAI as described in this Policy, and to record the user's confirmations (age, rights, content scope) as a true/false record attached to the conversion job.
- To reserve, finalize, or restore generation credits for Photo AI conversions (32 credits per successful conversion; restored on failure).
- To send text prompts to OpenAI for automated safety moderation (see Terms of Service). This provider flow does not apply to Photo AI conversions or to a supported SVG line-art file merely because you select it in Online Coloring.
- To send approved text prompts to Cloudflare Workers AI for image generation. Photo AI conversions send one normalized photo per conversion through Cloudflare to OpenAI's GPT Image 1.5 model, as described in Sections 1 and 3. Online Coloring is manual and does not automatically color your SVG.
- To maintain security and debug errors.
- To start Stripe-hosted Checkout or the Customer Portal, send receipts, reconcile subscription and order status, provide paid benefits, process cancellation or refund outcomes, and respond to billing support requests.
3. Processing and retention
- Text page-generation inputs and outputs (excluding Online Coloring browser storage and explicit Save): the app processes text prompts and generated pages in memory and does not intentionally persist them to D1, object storage, or the app filesystem. Generated SVG is returned directly in the response and remains in browser memory. Name coloring is rendered in your browser.
- Photo AI processing and retention: when an eligible signed-in user starts a conversion, the browser removes embedded metadata and resizes the photo, then sends this normalized copy to our Service for one AI conversion through Cloudflare to OpenAI's GPT Image 1.5 model. The photo exists only in temporary memory during processing and is never written to our storage, databases, logs, or analytics. The derived line art is stored in private object storage for up to 24 hours so an interrupted conversion can be recovered, and is deleted after you continue to coloring or when the time limit expires. Derived line art older than 24 hours is deleted by a scheduled cleanup. An explicit "Save to my account" action in Online Coloring stores the line art and your coloring work only — never the original photo. On this paid route, Cloudflare sends your request through an OpenAI endpoint that, per Cloudflare's current documentation, does not retain prompts or responses after processing. We separately switch off request logging for these conversions. Cloudflare and OpenAI may still process limited security, abuse-prevention, and billing records under their own terms, and safety systems may retain flagged content for review where required by law. Photo AI job and credit-ledger records keep only technical identifiers, statuses, timestamps, and cost data — never photos, prompts, or provider URLs. A Photo-origin line-art SVG or thumbnail may still resemble a person and is not guaranteed to be anonymous.
- Provider processing: OpenAI receives text prompts for safety moderation. Cloudflare Workers AI receives approved text prompts for generation. For Photo AI, one normalized photo per conversion is sent through Cloudflare to OpenAI's GPT Image 1.5 model as described in this Policy. Providers and Cloudflare infrastructure may process technical/service logs under their applicable terms and configuration; the app does not promise a provider-log retention period. A supported SVG line-art file selected in Online Coloring is not sent to OpenAI or Cloudflare Workers AI by the Upload action.
- Local Online Coloring: the app-provided sample and supported SVG line-art files are read, validated, and colored locally in your browser. Local coloring does not require sign-in. During unsaved local Homepage and Online Coloring use, the complete line-art SVG and coloring operations are not transmitted to our app servers. Browser storage used for navigation and work in progress is described in the next two bullets.
- Temporary coloring handoff (sessionStorage): to move a coloring page into /online-coloring, the Service temporarily writes the complete line-art SVG, source details, palette identifier, coloring operations, and last-updated timestamp to first-party sessionStorage under acp_coloring_handoff_v1. When the editor successfully reads a valid handoff, it removes this key. Otherwise, sessionStorage generally remains until the tab or browser session ends or you clear this site's storage.
- Coloring work in progress (localStorage): for local or unsaved use, including use without sign-in, the Service stores the complete line-art SVG, source details, palette identifier, coloring operations, and last-updated timestamp in first-party localStorage under acp_coloring_wip_v1. This browser-only work in progress remains until it is overwritten by later work or you clear this site's storage. It is not sent to or stored on our servers merely because it is locally autosaved, and we cannot recover it after it is cleared unless you separately downloaded it or explicitly saved it to your account.
- Saved coloring artworks (signed-in, explicit action): when you are signed in and explicitly choose Save (including the explicit move-to-account action), the Service transmits the complete line-art SVG, a PNG thumbnail, source details, palette identifier, and coloring operations to /api/coloring/artworks. The complete line-art SVG and thumbnail are stored in private object storage; Cloudflare D1 stores source metadata, private object keys, palette and operation data, and timestamps. Saved artworks are private and are not published or publicly shared by the Service. Free accounts may save up to 3 artworks. Saved artworks are kept while your account exists; you can delete any artwork at any time, and they are deleted when you ask us to delete your account. Deleted artworks are removed from primary storage promptly and from backups on the backup cycle.
- Quota records: D1 quota buckets and reservation rows become eligible for opportunistic deletion after 31 UTC days. Cleanup runs safely when a new generation reservation is attempted. It is idempotent, preserves the current day and unexpired active reservations, and may occur later if the tools receive no new generation requests.
- Account records: your Google sign-in row (subject identifier, name, email, profile picture URL, timestamps) is kept while your account exists and is deleted when you ask us to delete your account (Section 7). Signing out removes the session cookie from your browser but does not delete the account row.
- Billing records: Stripe processes payment card details on its hosted pages. We retain limited subscription, order, refund, dispute, plan, status, reference, and billing-timestamp records while your account exists. After an account deletion request, we retain only the minimum de-identified transaction records required by applicable tax, accounting, or other law. The exact legal retention period depends on those requirements.
- Payment-data minimization: payment metadata is limited to an opaque PageColor account reference. We do not place your name or email address in payment metadata. Webhook storage contains event metadata and a payload hash rather than the full payload. Product analytics must not contain Stripe identifiers, card information, email addresses, or payment details.
- Other browser storage: acp_client_fingerprint_v1 persists until you clear this site's browser storage. The separate acp_daily_quota_v1 counter is overwritten when used on a new day and removed when the app reads it as stale or malformed.
- The app does not use your photos, SVG line-art files, prompts, or coloring artworks to train its own models. Provider handling of text-generation data is governed by the applicable provider terms and configuration.
4. Children's privacy
The Service is designed for and directed to parents, teachers, and other adults. Content themes may be child-friendly, but the Service is not directed to children under 13, and we do not knowingly collect personal information from children under 13.
- Sign-in is intended for adults using their own Google account; the tools have no payment or email form, but prompts, photos submitted for Photo AI conversion, SVG line-art files, coloring artworks, IP addresses, browser identifiers, quota data, technical request data, and Google sign-in data are handled as described above.
- Photo AI is limited to users 18 or older and to photos that show no people. Do not submit photos of children or any person through Photo AI.
- If you believe a child under 13 has provided us personal information, contact support@pagecolorai.com and we will delete it.
5. Cookies and similar technologies
We use strictly necessary first-party browser storage for quota controls, the temporary coloring handoff, and local coloring work in progress, plus an encrypted session cookie that keeps you signed in.
PageColor AI does not load an analytics provider or collect product analytics events in v0. acp_coloring_handoff_v1 and acp_coloring_wip_v1 support local navigation and work in progress; they are not analytics, are not used for cross-site tracking, and are not sent to a tracking provider. Cloudflare may still process ordinary request, security, and infrastructure logs to deliver and protect the Service as described in Sections 3 and 6.
We do not use advertising or cross-site tracking cookies in v0. Details and storage durations are in our Cookie Policy at /cookie-policy.
6. Third-party processors
We share limited data with service providers who process it on our behalf:
| Provider | Role | Data involved |
|---|---|---|
| sign-in (OAuth 2.0) | Google account subject identifier, name, email address, profile picture URL | |
| OpenAI | AI photo-to-line-art conversion (Photo AI): one normalized photo per conversion; automated safety moderation for the text tool: text prompts | one normalized photo per Photo AI conversion; text prompts for the text tool |
| Cloudflare Workers AI | text-to-image generation | approved text prompts |
| Cloudflare | Worker delivery, private object storage, D1 quota/account/saved-artwork storage, security and infrastructure; AI Gateway routing for Photo AI conversions; temporary private storage of derived line art (up to 24 hours) | requests, IP address, hashed quota identity, quota records, Google sign-in records; for explicitly saved artworks, complete line-art SVGs, PNG thumbnails, source metadata, private object keys, palette and operation data, and timestamps; Photo AI conversion routing and derived line art; ordinary request, security, and infrastructure data |
| Stripe | payment processing (hosted checkout, subscriptions, receipts, invoices, refunds, and disputes) | payment card details entered on Stripe-hosted pages; customer email used for receipts; Stripe customer, subscription, and order references; plan, status, and billing timestamps. Payment card details are never seen or stored by us. |
On the Photo AI route, Cloudflare documentation states the request is served through a provider endpoint that does not retain prompts or responses; limited security, abuse-prevention, and billing records may still exist under each provider's terms, and safety systems may retain flagged content for review where required by law.
We do not sell personal information and do not share it for third-party advertising. We may disclose information if required by law or to protect the safety, rights, or security of users and the Service.
7. Your rights and choices
- Cookies and similar technologies: see the Cookie Policy for browser controls and storage durations.
- Browser storage: clear this site's storage to remove the random browser identifier, daily counter, acp_coloring_wip_v1, and any remaining acp_coloring_handoff_v1. A successfully consumed handoff is removed by the editor, and sessionStorage generally ends with the tab or browser session. Clearing coloring storage permanently removes that browser copy, and we cannot recover it unless you separately downloaded or explicitly saved the artwork to your account.
- Access/deletion: text page-generation inputs and outputs are not intentionally persisted by the app as described in Section 3. You may request deletion of Photo AI job records and derived line art via support@pagecolorai.com; the transient photo cannot be retrieved because it is never stored, and deletion of derived line art occurs automatically within 24 hours regardless. You can delete a privately saved artwork from your account and can sign out at any time (which clears the session cookie). To access or delete your Google sign-in account record and saved artworks, or for requests concerning remaining data (including requests under US state privacy laws such as the CCPA/CPRA, or, for EEA/UK visitors, the GDPR), contact support@pagecolorai.com. We will respond within a reasonable time.
- We do not "sell" or "share" personal information as those terms are defined under the CCPA/CPRA.
- Billing data: to request access to or deletion of billing records associated with your account, contact support@pagecolorai.com. Some de-identified transaction records may be retained after account deletion when required by applicable tax, accounting, or other law.
8. Security
We use HTTPS, limited-purpose processing, hashed quota identities, access controls, and file-type, size, and content checks for supported SVG line-art files. These SVG controls reduce risk but do not guarantee that every harmful file is impossible or will be detected. No method of transmission, storage, or processing is completely secure; do not upload or save content you consider highly sensitive.
9. Changes to this Policy
We will post any changes on this page and update the effective date. Material changes will be announced on the site before they take effect.
10. Contact
Privacy questions or requests: support@pagecolorai.com