Beacon Privacy Policy
Last updated: April 21, 2026
Beacon is the parent-support app operated by Spectrum Unlocked. This policy explains exactly what we collect, how we use it, who we share it with, and how you can control your data. It applies only to the Beacon app at beacon.spectrumunlocked.com. The main Spectrum Unlocked privacy policy covers the public website.
We've written this in plain English. If anything here is unclear, email us at beacon@spectrumunlocked.com and we'll get back to you.
What we collect
From you, the parent
- Email address (for sign-in, account recovery, receipts)
- Password (stored hashed by Supabase, never visible to us)
- Payment method details (card brand and last four digits only — full card numbers never touch our servers; Stripe handles them)
- Your subscription plan, status, and billing history (via Stripe)
About your child
- Name, age, diagnosis timeline, communication style
- Sensory profile (what they seek and avoid)
- What motivates and regulates them
- Behaviors you choose to track (name, emoji, timestamps)
- Structured data from IEP documents you upload (goals, services, accommodations, grade, school — not the file itself, notyour child's name, DOB, or address — see IEP Translator below for details)
What you write in Beacon
- Chat messages with Beacon (full text of what you send and what the AI replies)
- Journal entries, check-ins, wins, notes attached to behaviors
- Schedules, sensory notes, caregiver handoff cards (“Pass the Baton”)
- “Memories” automatically extracted from your chat history — short facts Beacon uses later for context (e.g. “Jamie is sensitive to fluorescent lights”)
Automatically
- Page views and anonymous interaction events via Umami (no cookies, no cross-site tracking, no IP address storage)
- JavaScript errors and performance traces via Sentry on production, so we can fix bugs you hit
- Logs of every AI call Beacon makes on your behalf — which model, how long it took, success or error — for internal reliability monitoring only (no access for Beacon staff beyond engineering on-call)
Who we share it with
Beacon is a small team. We don't sell, rent, or trade your data. We use the following third-party services (“subprocessors”) to run the app. We send them only what they need to do their job.
| Service | What we send | Role |
|---|---|---|
| Supabase | Everything stored in Beacon: your account, child profile, messages, memories, behaviors, schedules, IEP breakdowns. | Database + sign-in |
| Anthropic (Claude) | Your chat messages plus a system prompt that includes your child's profile, recent behaviors, journal snippets, and extracted memories. Also used for IEP extraction and for the monthly Rewind letter. | AI features |
| Google (Gemini) | IEP photo and PDF transcription, and chat in cases where Beacon routes your request through Gemini. | AI features |
| OpenAI | Chat messages in the same format as above, used for redundancy when other providers are unavailable. | AI features |
| Deepgram | Voice recordings from the chat microphone. Our server passes a no-store flag on every Deepgram request, so audio is transcribed in-flight and discarded — not retained by Deepgram. Only the transcript text returns to Beacon. | Voice transcription |
| Stripe | Your email, payment method, and subscription status. Full card numbers never reach our servers. | Payments |
| Vercel | Hosts the Beacon app. Receives request logs (URL path, timestamps, country-level IP) for standard web hosting. | Hosting |
| Sentry | JavaScript errors and a 10% sample of page-load traces. Could include snippets of what was on screen when the error happened. | Error tracking (prod only) |
| Umami | Anonymous page-view counts and feature-usage events. No cookies, no IP, no cross-site identifiers. | Privacy-friendly analytics |
AI training:Under our API agreements with Anthropic, Google, and OpenAI, none of them use Beacon data to train their models. If any of these providers change their terms in a way that would permit training on your data, we'll update this policy and notify you before the change takes effect.
What each feature does with your data
Chat
Each time you send a message, Beacon builds a system prompt that includes your child's profile, recent journal entries, recent check-ins, recent behavior patterns, and extracted memories, and sends it with your message to Claude (or Gemini as fallback). The entire exchange — your message, the AI's reply, and a topic category we assign later — is saved in your chat history so you can come back to it.
Voice input on chat
When you tap the microphone in the chat input, your voice is captured by your browser and sent to Deepgram for transcription. Our server passes a no-store flag on every Deepgram request, so your recording is transcribed in-flight and discarded — we don't store the audio, and neither does Deepgram. The transcript text returns to your chat input for you to review and edit before sending. Once you tap Send, the text is treated the same as any typed message (saved to your chat history, used for memory extraction, etc.).
Memories
Once a day, a background job reviews idle chat sessions and asks Claude to pull out short, useful facts (“Jamie prefers weighted blankets at bedtime”) to include in future chats. You can view and delete individual memories in Settings.
Behavior tracker + Foundation tools
Behaviors, sensory profile entries, journals, check-ins, wins, and schedules are stored in Beacon so you can track patterns over time. They're also read into the system prompt for chat so Beacon can answer in context. Nothing in Foundation is shared unless you explicitly create a share link (see below).
IEP Translator
When you upload an IEP (PDF, Word doc, or up to 50 photos):
- PDFs with a text layer (most district exports) are parsed locally. The file never leaves our servers for these.
- Scanned PDFs, Word docs, and photos are sent to Google Gemini for page-by-page transcription to plain text.
- The transcribed text is sent to Google Gemini (and Anthropic Claude as a fallback) to extract a structured plain-English breakdown of goals, services, and accommodations.
- The original uploaded file is read once in memory and then discarded. We don't save the PDF, Word doc, or any photos.
- The uploaded filename is also discarded — we replace it with a neutral placeholder because filenames like “JamieSmith_IEP_2026.pdf” commonly contain a child's name.
- The AI prompt is instructed not to extract your child's name, date of birth, address, phone number, student ID, or the names of teachers, therapists, or case managers. It redacts these before returning the breakdown.
What we keep: grade, school, meeting and effective dates, the extracted goals/services/accommodations, and our confidence rating. What we don't keep: the file itself, its filename, or any of the PII categories above.
We keep your breakdown for the life of your account. You can remove any breakdown at any time from the IEP Translator page. We don't keep the original document. We only store the structured plain-English summary.
On Plus, we may also detect and link related documents you upload (for example, a progress report that updates an existing IEP). This uses only neutral metadata: document type, school year, and the display name we computed for you. We never read the document body.
Rewind + Playback
These features ask Claude to synthesize the last 30 days of your wins, behaviors, journal entries, and check-ins into a narrative summary (Playback) or an emotional-support letter (Rewind). The resulting summary is stored so you can revisit it. If you generate a share link, the summary becomes publicly viewable by anyone with the link until you revoke it.
Share links (Baton, sensory, schedule, rewind, playback)
When you tap Share on any of these surfaces, Beacon generates a random token and makes the content accessible to anyone who knows the link. There's no password. Revoke the link any time from the same surface; from that point the link returns a 404. Anyone with the active link can view the shared content.
Nudges + Workshop generators
Each week Beacon generates a proactive question for you (a nudge) grounded in your recent activity. When you use Workshop generators (Social Story, School Email, Activity, etc.) we send your child profile and relevant context to the AI and save the result.
How long we keep your data
We're going to be straight with you here.
- IEP breakdowns: kept for the life of your account. Remove any breakdown at any time from the IEP Translator page; it is deleted immediately.
- Everything else— chat messages, memories, behavior logs, journal entries, check-ins, wins, schedules, playbacks, rewinds, nudges, baton cards, workshop outputs — is kept for the life of your account. We don't automatically expire it. You can delete any individual entry in the app, and you can delete your entire account at any time (see below).
- Your account itself:when you delete your account, we delete your Supabase data immediately. Your Stripe customer record is retained for tax and accounting purposes as required by law; no further charges occur. Sentry error logs auto- expire on Sentry's schedule (typically 30-90 days).
Your rights
You have the right to:
- Accessany data we have about you. Most of it is already visible in the app; for anything that isn't, email us.
- Correct inaccurate data (edit your child profile, behaviors, journal entries, etc. in the app).
- Delete individual entries in the app, or your entire account from Settings → Danger zone → Delete my account. Account deletion is immediate and cancels any active subscription. For an export of your data before deletion, email beacon@spectrumunlocked.com.
- Exporta copy of your data. Email us and we'll send you a JSON export within 30 days.
- Opt out of AI processing on a per-feature basis by simply not using the feature. Chat, Rewind, Playback, Nudges, and the IEP Translator all require AI; Foundation tools (sensory profile, behavior tracker, journal, schedules) do not.
Children's data
Beacon is designed for parents, not for children. Your child doesn't log in, doesn't answer questions, and doesn't directly interact with any Beacon surface. All data about your child is information you provide as their parent, and you control all of it.
If you're under 18 yourself, please don't use Beacon — it's designed for adult caregivers, and our Terms require account holders to be 18 or older.
Security
We use TLS in transit and encryption at rest via Supabase. Access to production data is limited to engineers who need it for on-call debugging, and every access leaves an audit trail. We don't claim to be unbreakable — no service can — but we hold ourselves to the same standard as a healthcare-adjacent app.
Changes to this policy
If we change this policy in a way that affects what we collect, who we share it with, or how long we keep it, we'll tell you in the app and by email before the change takes effect. The “Last updated” date at the top of this page reflects the most recent change.
Contact
Questions, requests, or complaints: email beacon@spectrumunlocked.com. We aim to respond within 3 business days.