Compliance evidence
How TutorStudio meets the ICO’s 15 standards for children’s online services. We treat the Code as a floor, not a ceiling: every decision below is reviewed against the best interests of the child first, and our commercial interests second.
Services likely to be accessed by children must consider the best interests of the child as a primary consideration.
Every spec touching a child user passes a best-interests design-review gate. The TutorStudio entitlements model hardcodes safeguarding, DSAR, and age-transition infrastructure as ungated at every commercial tier so no pricing decision can suppress child-safety surfaces. The DPO validates borderline calls.
Evidence references
principles/product/aadc.md §A-1principles/product/safeguarding.md §S-1docs/specs/entitlements-quotas-credits.md §P1 (COMPLIANCE_FEATURES)docs/legal/dpo-designation.mdHigh-risk processing of children's data must be covered by a current DPIA; missing or expired DPIAs must disable the feature.
The DPIA registry lives under docs/legal/. Current DPIAs include AADC transitions, safeguarding log, session recording, J26 mock-trajectory AI, and J27 wellbeing alert. Features touching child data are feature-flag-gated FALSE until production DPO countersignature per the interim-dpo-dsl-self-sign protocol. Expired DPIAs architecturally disable the feature flag.
Evidence references
docs/legal/dpia-aadc-transitions.mddocs/legal/dpia-safeguarding-log.mddocs/legal/dpia-recording.mddocs/legal/dpia-j26-mock-trajectory-ai.mddocs/legal/dpia-j27-wellbeing-alert.mddocs/legal/dpo-designation.md (DPIA sign-off log)principles/product/aadc.md §A-2Services must establish and apply age-appropriate design according to the likely age of the child. Different age groups have different needs.
Four AADC age bands are implemented across the platform: under_13, 13_to_15, 16_to_17, and adult. Fail-strict default: an unknown age maps to under_13. A birthday-transition cron job moves accounts between bands at the appropriate moment with 30/14/7/0-day pre-notifications. The tf_aadc_band() function derives the band from date of birth at read-time. Date of birth is captured at every signup path; Gillick competence (ADR-0066) extends maturing-minor autonomy at 13+.
Evidence references
principles/product/aadc.md §A-3, §A-4docs/legal/dpia-aadc-transitions.mdsupabase/migrations/20260502120000_0008_aadc_transitions.sqlADR-0066 (Gillick competence)Privacy information and other published terms, policies and community standards must be concise, prominent and provided in clear, age-appropriate language.
TutorStudio commits to three banded privacy notices: under-13 (plain language with read-aloud), 13–17 (simplified with visuals), and adult (full legal text). Just-in-time data-use explainers appear at every collection point. Pre-notification dispatch fires at 30/14/7/0 days before each age-band transition.
In progress
In progress. The three banded privacy notice texts are specified in principles but the shipped content artefacts are pending. The page will be re-reviewed before the public `robots: index` flag is flipped to `true`.
Evidence references
principles/product/aadc.md §A-5, §A-6docs/legal/dpia-aadc-transitions.md (pre-notification cadence)docs/legal/ropa.md (privacy notice references)Children's personal data must not be used in ways that have been shown to be detrimental to their wellbeing, or that go against industry codes of practice, regulator advice, or government advice.
Prohibited at architectural level: peer-percentile displays, streak-protection loss-aversion mechanics, late-evening study prompts, and manipulative AI reinforcement loops. Quiet hours default to 21:00–07:00 with no notifications. Student-facing motion is opacity-only — no scale transforms, no looping animation — and this is enforced as a bright line of the tenant customisation surface regardless of agency theme. AI output to minors passes a Haiku-tier child-safe classifier before display, and canUseAIForMinor() gates every AI access path.
Evidence references
principles/product/aadc.md §A-12principles/product/safeguarding.md §S-14docs/brand/brand-naming-agent-manual.md §3.3 (motion bright line)ADR-0065 (student AI three-gate model)ADR-0093 §Gate 2 (animation constraints)Published terms, policies and community standards must be upheld. An unenforced policy is itself a breach.
TutorStudio's enforcement infrastructure is built: an append-only safeguarding log restricted by RLS to DSL, DPO, and compliance roles; quarterly consistency review planned. Each published policy will land with an enforcement playbook.
In progress
In progress. The community standards document and per-policy enforcement playbooks are not yet published as artefacts under docs/legal/. The safeguarding-log feature is feature-flag-gated. The infrastructure is ready; the public-facing policy texts are scheduled for the pre-launch checklist.
Evidence references
principles/product/aadc.md §A-13docs/legal/dpia-safeguarding-log.mdADR-0061 (visibility policy model)Settings must be high privacy by default — unless a compelling reason for a different default setting, taking account of the best interests of the child, can be demonstrated.
A defaults register is maintained per age band. Settings UIs invite opt-in rather than opt-out. Any default change on an under-18 account requires DPO sign-off and a written best-interests argument. Tenant customisation is constrained at a bright-line level: privacy controls cannot be repositioned, and safeguarding pathway visual signals cannot be de-emphasised by any agency theme.
Evidence references
principles/product/aadc.md §A-7principles/product/safeguarding.md §S-3ADR-0093 §Gate 2 (CI enforcement)docs/status/master-reference.md §11 (brand bright lines)Only the minimum amount of personal data needed to provide the elements of the service the child is actively and knowingly engaged in must be collected and retained. Speculative collection is prohibited.
Every child-data column carries a necessity justification in the data dictionary with EP-15 classification, PII tagging, and retention period. AADC CI Gate 1 blocks any new PII column on a student-facing table without a DPIA reference and Classification annotation. The recording pipeline collects only when consent is granted (ADR-0068). The AADC-transitions DPIA shows that date of birth is not persisted on derived tables.
Evidence references
principles/product/aadc.md §A-8ADR-0093 §Gate 1 (PII classification)ADR-0068 (student recording consent)docs/legal/dpia-aadc-transitions.md §data-minimisationChildren's personal data must not be disclosed unless there is a compelling reason to do so, taking account of the best interests of the child.
The TutorStudio Record of Processing Activities (RoPA) lists every named sub-processor with the relevant Article 28 data processing agreement. Sub-processors that carry child data carry an explicit A-10 compelling-reason record. PostHog and Sentry receive T0/T1 fields only — no email, no raw IP, no date of birth. Sentry's beforeSend composer (ADR-0096) redacts student_email, parent_email, safeguarding.*, dsar.*, and academic profiling fields before transmission. AADC CI Gate 2 blocks any cross-tenant data join on student records.
Evidence references
principles/product/aadc.md §A-10docs/legal/ropa.mdADR-0096 (Sentry PII redaction)ADR-0093 §Gate 2 (cross-tenant join scan)Geolocation must be switched off by default unless there is a compelling reason. Precise geolocation must not be used except where strictly necessary, and visible to the child throughout.
TutorStudio captures no child geolocation as an architectural exclusion. Family location is stored at postcode or local-authority granularity only — never as latitude / longitude. Tutor mileage uses postcode-to-postcode distance. No device-location tracking is performed. A schema audit confirms no lat/lng columns on user tables. AADC CI Gate 3 blocks any lat/lng or precise postcode column on student records without an explicit consent annotation.
Evidence references
principles/product/aadc.md §A-9ADR-0093 §Gate 3 (geolocation consent annotation)Where parental controls are provided, the child must be told what is visible to the parent. Covert monitoring is prohibited.
The student portal carries a per-category visibility indicator: the child sees exactly what the parent has viewed via the access log. The 16–17 band exposes child-side controls over parent visibility, per UK maturing-minor practice. Under-13 accounts default to full parent visibility with overt child-side awareness UI. AI consent requires explicit parent opt-in (ADR-0065) and the student always sees the consent state. Recording consent is dual at 13+: student refusal overrides parental consent (Gillick, ADR-0068). The J27 wellbeing-alert flow gives parents a DSL-authored summary only; the child is aware that an observation was logged.
Evidence references
principles/product/aadc.md §A-14principles/product/safeguarding.md §S-26ADR-0065 (student AI three-gate model)ADR-0068 (student recording consent)docs/legal/dpia-j27-wellbeing-alert.md (BL-1 boundary)Options that use profiling must be switched off by default. Profiling that produces legal effects on the child, or similarly significant effects, must not occur without compelling reason, current DPIA, opt-out, and human-in-the-loop.
Profiling is default-off. AADC CI Gate 6 (warn) blocks algorithmic ranking or scoring of students without a matching profile_score_audit log entry. The J26 mock-trajectory AI uses a tutor-mediated decision pattern to preserve the Article 22 right; a static fallback is always available, and the DPO has signed off on the J26 DPIA. The student AI three-gate model (ADR-0065) requires the balance gate, AI Lock, and AADC pipeline to all pass before any AI output is rendered. AI output is validated against a Zod schema before persistence or display.
Evidence references
principles/product/aadc.md §A-11ADR-0065 (student AI three-gate model)ADR-0093 §Gate 6 (profile_score_audit)docs/legal/dpia-j26-mock-trajectory-ai.mdNudge techniques must not be used to lead children to make poor privacy decisions, or to act against their best interests.
Signup, permission, profile-completion, and notification flows use neutral framing. Required versus optional fields are visually distinguished. “Skip” is given equal prominence to “continue”. There are no “Allow (recommended)” labels and no visually de-emphasised restrictive options. AADC CI Gate 7 blocks any timed notification to a student between 22:00 and 07:00 local time. Crisis notifications bypass quiet hours per the documented dispatch pattern.
Evidence references
principles/product/aadc.md §A-15ADR-0093 §Gate 7 (quiet hours)ADR-0089 (crisis helpline catalogue)lesson 2026-05-06 aadc-quiet-hours-gate-patternConnected toys and devices must include effective tools to enable conformance to the code, with special care around audio and visual capabilities.
Not applicable. TutorStudio ships no connected hardware, no audio toys, no smart devices, and no companion physical products. The standard will be re-assessed in full if hardware enters scope.
Not applicable
TutorStudio is a software-only platform with no connected hardware, audio toys, or smart devices in scope. This standard would only apply if the product introduced a connected physical surface, at which point it would be re-assessed before launch.
Evidence references
principles/product/aadc.md §Open extension points (recorded as N/A)Prominent and accessible tools must be provided to help children exercise their data protection rights and report concerns.
The student portal exposes “My data” (Article 15), “Fix my data” (rectification), “Delete my data” (erasure with a 30-day grace period), “Download my data” (JSON and PDF export), “Stop using my data for X” (restriction and objection), and “Report a concern”. The surface is age-appropriate and mobile-accessible. Under-13 accounts route through a parent-assisted flow. A tutor-excluded student-voice channel (ADR-0077) lets a student raise concerns with TutorStudio platform staff directly, with a published response-time SLA. The crisis helpline catalogue (ADR-0089) is age-banded and jurisdiction-aware.
In progress
In progress. The rights surfaces are specified and the (any-cohort)/your-data/ route group has request pages, but the full student-portal rights coverage is partial as the portal completes its build-out. The page will be re-reviewed before the public `robots: index` flag is flipped to `true`.
Evidence references
principles/product/aadc.md §A-16ADR-0077 (student-voice channel RLS)ADR-0089 (crisis helpline catalogue)TutorStudio’s data protection governance documents are maintained in the project repository and provided to school and agency buyers on request. Public routes are not published for the documents themselves; the references below identify the canonical source on file.
Data Protection Officer: Michael Christopher Marshall (founder + sole director). Full designation: docs/legal/dpo-designation.md.Record of Processing Activities: docs/legal/ropa.md.TutorStudio Ltd, company number 17233633, registered in England and Wales.
If you have a question about how TutorStudio handles children’s data, or you want to report a concern, contact our Data Protection Officer through the routes listed in the designation document above. If you are a child reading this page, the contacts below are for you.
If you do not feel safe, or you are worried about something at home, school, or online, you can talk to someone now.
In an emergency call 999. If you are in immediate danger, contact the police.