Privacy Policy
Last Updated: October 8, 2026
Effective Date: October 8, 2026
Version: 1.17.0
1. Introduction
Evolved Academics LLC ("we," "us," or "our") operates ClassLens, an AI-assistive grading tool for Google Classroom, available at www.classlens.com. This Privacy Policy describes how we collect, use, disclose, and protect information when you use ClassLens (the "Service").
Evolved Academics LLC is based in California, USA. ClassLens is designed for K-12 teachers in US public schools who use Google Classroom. We are committed to protecting the privacy of both teachers and their students.
By using the Service, you agree to the collection and use of information as described in this policy. If you do not agree with this policy, please do not use the Service.
2. Information We Collect
2.1 Teacher Account Information
When you authenticate with Google, we collect and store:
- Google profile name
- Email address
- Google account identifier
- OAuth access and refresh tokens (encrypted)
2.2 Grading Configuration
We store your grading preferences and settings, including strictness level, comment style, feedback length, late work policy, rubric preferences, and similar configuration data. These settings relate to your pedagogy and do not contain student information.
2.3 Grading Job Metadata
We retain metadata about grading jobs for billing reconciliation, usage tracking and subscription quota enforcement, and for troubleshooting. This metadata includes timestamps, assignment identifiers, job status, and aggregate statistics (such as the number of submissions processed). This metadata does not include student names, email addresses, grades, submission content, or feedback text.
2.4 Information We Do NOT Keep
We do not maintain a permanent student-record database containing the following information. Application grading copies are temporary; provider caches and company email have the separate retention periods described below and in Section 7:
- Student names or email addresses
- Student grades or scores
- Student submissions, essays, or other work
- AI-generated feedback or comments
- Student demographic information
- Parent or guardian information
In Grade & Review mode, ClassLens keeps the drafted results for teacher review, with each student's name and email address and the names, links and version details of their files. It does not keep a copy of the submission files: the review screen loads each file in the teacher's browser directly from Google Drive. This review copy is deleted when the teacher releases the grades or keeps them as drafts, with a 24-hour expiry as the failsafe. In Draft Only mode, a separate read-only copy of student display names, submission identifiers, scores, criterion results and generated feedback is available to the teacher who ran the job for up to 24 hours from the start of the job. Account deletion removes access to the Draft Only copy and attempts to delete it; if that deletion fails, the copy still expires on its own 24 hours from the start of the job. Opening it does not extend the window, and returning grades in Google Classroom does not delete it. It contains no separate student email-address field, submission files or attachment links. Generated feedback may itself include a student's name or details from their work. Sheet Export jobs do not create either teacher-review copy. The encrypted job-processing cache retains its separate 48-hour expiry failsafe. Email, provider caches and recipient mailboxes follow the separate retention periods in Section 7 of the Privacy Policy.
3. How We Use Information
We use the information we collect for the following purposes:
- Authentication: Verify your identity and maintain your session through Google OAuth.
- Grading requests: Access your Google Classroom assignments and student submissions to process grading requests that you initiate.
- Feedback delivery: Deliver AI-generated feedback to the student as a comment on their Google Doc or as an email when the teacher releases it, and write AI-generated draft grades back to Google Classroom. Teachers choose between two modes per grading job. In Draft Only mode, grades are saved as Classroom drafts and the teacher releases them inside Google Classroom. In Grade & Review mode, grades are routed to the in-app Batch Review Dashboard for the teacher to review and release. In both modes, students never see grades until the teacher takes an explicit release action; ClassLens does not auto-release AI grades to students. In Draft Only mode, generated feedback is also available in a read-only teacher view until 24 hours from job start. ClassLens does not send that feedback to students.
- Knowledge gap reports: Generate class-wide reports on areas where students may need additional instruction. A report is generated automatically for a grading job once enough students have been graded to make the aggregate meaningful (five by default, and you can change or disable that), is shown to you in the app, and is retained for the period given in Section 7. A copy is also emailed to you through our company email service.
- Service improvement: Use anonymized, aggregate job metadata to improve the reliability and performance of the Service.
We do not use any collected information for advertising, marketing to students, building behavioral profiles, or any purpose unrelated to the educational grading function of the Service.
4. Google User Data
ClassLens accesses Google user data through Google OAuth and Google APIs. This section describes specifically how we handle Google user data obtained through these services.
4.1 Google User Data We Access
Through Google OAuth and Google APIs, ClassLens accesses the following Google user data:
- Google profile information (name and email address)
- Google Classroom course and assignment data
- Google Classroom student submissions
- Google Classroom class rosters (student names and email addresses), used to address the student by first name in feedback and to deliver feedback emails; see Section 5.2
- Google Drive files attached to student submissions
- Google Sheets (for optional grade export, when authorized by the teacher)
- Email addresses from your account and authorized class roster, to deliver reports and safety notices to you and teacher-reviewed feedback to students through our company email service. We do not need Gmail sending permission for this delivery
4.2 How We Use Google User Data
Google user data is used exclusively to provide and improve the ClassLens grading service. Specifically, we use Google user data to:
- Authenticate teachers and maintain login sessions
- Read assignments and student submissions from Google Classroom
- Write AI-generated draft grades back to Google Classroom
- Export grades to Google Sheets when requested by the teacher
- Send knowledge gap reports to the teacher by email, and notify the teacher when a submission is flagged for safety review and was not graded. A safety notification names the student and the assignment and contains no submission content
- Deliver feedback to students as comments on their Google Docs, or as emails, when the teacher releases grades in Grade & Review mode
4.3 We Do Not Sell Google User Data
We do not sell Google user data to any third party, under any circumstances. This applies to all Google user data, including teacher data and student data accessed through Google APIs.
4.4 Prohibited Uses of Google User Data
ClassLens limits its use of Google user data to providing and improving the grading service. We do not use Google user data for any of the following purposes:
- Targeted advertising or personalized advertising
- Retargeted advertising or interest-based advertising
- Selling data to or providing data to data brokers
- Providing data to information resellers
- Determining credit-worthiness or for lending purposes
- Training artificial intelligence or machine learning models
- Building user profiles for non-educational purposes
- Creating or contributing to databases unrelated to the Service
- Any purpose other than providing or improving the ClassLens grading service
4.5 Sharing of Google User Data
We do not transfer or disclose Google user data to third parties except as necessary to provide the Service:
- Google Cloud Vertex AI: Student submission content is processed by Google Cloud Vertex AI solely for AI-assisted grading, governed by the Google Cloud Data Processing Addendum (CDPA). Customer data is not used to train Google's foundation models. Google Cloud Vertex AI is enrolled in Zero Data Retention (ZDR) at the project level: Google's Generative AI Services team confirmed the exception to the standard prompt logging policy on 2026-04-30 for Cloud project 135589175772 (the production Vertex AI project for ClassLens), which removes the abuse-monitoring retention window that would otherwise apply to inference inputs and outputs. Cloud Audit Logs on aiplatform.googleapis.com provide an immutable audit trail.
- Google Cloud Storage: Transient file staging for Vertex AI inference. ClassLens uploads each student submission file to a private Cloud Storage bucket in a U.S. region, IAM-scoped to a least-privileged ClassLens service account. Files are deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours.
- Cloudflare: All traffic between your browser and ClassLens, including the pages and data a signed-in teacher views, passes through Cloudflare in transit for CDN, security and tunneling. Cloudflare terminates the encrypted (TLS) connection at its edge, so the traffic is readable there. Cloudflare logs standard web traffic metadata (IP addresses, request headers).
- Amazon Web Services: ClassLens runs on AWS, so data in transit and at rest passes through AWS infrastructure, governed by the AWS Data Processing Addendum.
- Stripe: When a teacher starts a paid subscription, we send Stripe the teacher's email address and their Google account identifier so the subscription can be created and matched back to the account. No student data is sent to Stripe.
We do not transfer Google user data to any other third parties for advertising, data brokering, resale, credit assessment, or any purpose unrelated to providing the ClassLens grading service.
4.6 Google API Services Limited Use Disclosure
ClassLens's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements.
5. Student Data
Student data is handled with the highest level of care and is processed only transiently. The following describes the complete lifecycle of student data within our system:
5.1 Transient Processing Model
- Download: When a teacher initiates a grading job, student submissions are downloaded from Google Classroom via the Google Classroom API and Google Drive API using the teacher's authorized OAuth credentials.
- In-memory processing: Submissions are held in ClassLens server memory for the duration of a single grading call only. ClassLens does not write student submissions to its own application database, durable storage volumes, or long-term cache. Submissions are then handed off to Google Cloud Storage for transient staging as described below; that staging is deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours.
- AI processing: Submissions are uploaded to a private Google Cloud Storage bucket and referenced by Google Cloud Vertex AI for AI-assisted grading. Vertex AI processes the submissions and returns grades and feedback.
- Write-back: AI-generated grades are written back to Google Classroom in one of two teacher-selected modes. In Draft Only mode, the grade is saved as a Classroom draft and the teacher releases it inside Google Classroom. In Grade & Review mode, the draft grade is written to Google Classroom during grading in the same way, and the batch is additionally routed to the in-app Batch Review Dashboard for the teacher to review; on the teacher's explicit approval, ClassLens marks the grade as assigned in Google Classroom and delivers any feedback to the student as a comment on their Google Doc or as an email. In both modes the teacher remains the grader and the releaser of record on every assignment; ClassLens does not release AI grades to students without an explicit teacher action.
- Deletion: After grading is complete, the in-memory copies of student submissions are discarded with the function scope, and the staged copy in Cloud Storage is best-effort deleted. In Grade & Review mode no copy of the submission is kept for review: the drafted results stay in the review queue until the teacher releases them or the 24-hour failsafe expires, and the review screen loads each file in the teacher's browser directly from Google Drive. Submission metadata and per-student results also sit in the encrypted Redis job cache while the job runs. It is cleared once the job finishes successfully; a job that ends incomplete keeps its cache so the work is recoverable, and either way the 48-hour expiry is the outer bound for the live cache (Section 6 describes the cache's on-disk file). In Draft Only mode, generated feedback is also available in a read-only teacher view until 24 hours from job start. ClassLens does not send that feedback to students. Deleting your account removes access to Draft Only feedback-view copies and attempts to delete them. If that deletion fails, they still expire on their own 24 hours from the start of the job. AI-generated grades are written back to Google Classroom (Draft Only mode), or grades and feedback are held in an in-app Batch Review Dashboard (Grade & Review mode) for the teacher to review and release; the Batch Review queue uses a Redis cache that is deleted when the teacher releases grades, with a 24-hour automatic failsafe expiry. In Grade & Review mode, ClassLens keeps the drafted results for teacher review, with each student's name and email address and the names, links and version details of their files. It does not keep a copy of the submission files: the review screen loads each file in the teacher's browser directly from Google Drive. This review copy is deleted when the teacher releases the grades or keeps them as drafts, with a 24-hour expiry as the failsafe. In Draft Only mode, a separate read-only copy of student display names, submission identifiers, scores, criterion results and generated feedback is available to the teacher who ran the job for up to 24 hours from the start of the job. Account deletion removes access to the Draft Only copy and attempts to delete it; if that deletion fails, the copy still expires on its own 24 hours from the start of the job. Opening it does not extend the window, and returning grades in Google Classroom does not delete it. It contains no separate student email-address field, submission files or attachment links. Generated feedback may itself include a student's name or details from their work. Sheet Export jobs do not create either teacher-review copy. The encrypted job-processing cache retains its separate 48-hour expiry failsafe. Email, provider caches and recipient mailboxes follow the separate retention periods in Section 7 of the Privacy Policy. Once a grading job's results are released or expire, ClassLens deletes the submission content, grades and AI-generated feedback it held; the failsafes described here are what bound a delete that fails, rather than the first attempt always succeeding. For each student file uploaded to Cloud Storage, ClassLens issues a best-effort delete call as soon as grading of that file completes; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours.
5.2 Student Identification
During an active grading run, ClassLens fetches each student's name and email address from the Google Classroom API so that the AI can address the student by their first name in feedback and so that, when the teacher enables email delivery of feedback, the message can be sent to the correct address. This information is held in server memory only for the duration of that grading call and is discarded when the call returns. During an active grading job, interim working data (including this roster information and per-submission results) may also transit our job cache encrypted with AES-256-GCM. It is cleared once the job finishes successfully; a job that ends incomplete keeps its cache so the work is recoverable, and either way the 48-hour expiry is the outer bound for the live cache (Section 6 describes the cache's on-disk file).
In our persistent storage, students are referenced only by opaque Google Classroom identifiers. The opaque identifiers are used for matching graded work back to the correct student submission in Google Classroom, for recording a standing AI-grading opt-out where a teacher has set one, and for preventing duplicate grading of the same submission. We do not write student names, email addresses, or any other personally identifiable information to our database.
5.3 No Secondary Use
Student data is never used for any purpose other than completing the grading job requested by the teacher. We do not use student data for advertising, profiling, product development, model training, or any non-educational purpose.
6. Third-Party Services
The Service relies on the following third-party services to function. Each service is used solely for the purposes described below.
| Service | Purpose | Data Shared |
|---|---|---|
| Google Classroom API | Access assignments and student submissions; write back grades | Teacher OAuth tokens; reads/writes assignment and submission data |
| Google Drive API | Download student-submitted files (documents, PDFs) | Teacher OAuth tokens; reads file content |
| Google Sheets API | Export grades and feedback to Google Sheets when requested by the teacher | Teacher OAuth tokens; writes grade data to teacher-owned spreadsheets |
| Amazon SES (company email) | ClassLens uses Amazon Simple Email Service (SES) in the US West (N. California) region to send teacher-requested student feedback, knowledge gap reports, safety notifications, essential account or policy notices, and onboarding and trial emails from our domain. Student feedback is sent to one student at a time after the teacher requests its release. Replies to student feedback go to the teacher; replies to the founder welcome go to the founder's business inbox; replies to other service notices go to ClassLens support. This delivery does not require permission to send from the teacher's Gmail mailbox. | SES processes the recipient address and message content, including grades and feedback when email delivery is selected. We require encrypted SMTP transport, request a one-hour delivery retry window, and do not enable open or click tracking or optional email archiving. A sending confirmation means the provider accepted the message; it does not guarantee inbox delivery or that the recipient read it. School mail rules can prevent delivery. |
| Google Cloud Vertex AI | AI inference of student submissions and per-job shared prompt caching | Student submission content, and the student's first name from the class roster, sent only when the teacher has feedback comments turned on so the comment can address them by name; together with the teacher's rubric and assignment instructions (all transiently). The submission is sent as the student wrote it, so it may itself contain their name; we attach no other identifier. Governed by the Google Cloud Data Processing Addendum (CDPA); customer data is not used to train Google's foundation models. Project-level Zero Data Retention approved by Google 2026-04-30 (Cloud project 135589175772). No abuse-monitoring prompt logging.Eligible jobs may cache shared assignment, rubric and grading context for up to five minutes, limited to that job. Google separately caches inference inputs, outputs and derived data in project-isolated memory with a 24-hour expiry. This memory cache is not stored at rest. See Privacy Policy Section 6.1 for scope and deletion details. |
| Google Cloud Storage | Transient file staging for Vertex AI inference | Student submission files (transiently). Private bucket in a U.S. region, IAM-scoped to a least-privileged ClassLens service account. Deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours. |
| Google Workspace (business email) | Send ClassLens's own transactional email: district invitations, notices to a teacher removed from a district, contact-form, waitlist and report-request messages, and operational alerts | Recipient name and email address and the message content, sent from ClassLens's Google Workspace mailbox over SMTP. Governed by the Google Workspace Terms of Service |
| Cloudflare | CDN, DDoS protection, and secure tunneling | All traffic between browsers and ClassLens in transit (TLS terminated at Cloudflare's edge), including the data a signed-in teacher views; logs standard web traffic metadata (IP addresses, request headers) |
| Google Analytics 4 (GA4) | Signup, conversion, subscription-lifecycle, and public-demo event measurement | Discrete server-side events only (signup, trial start, trial conversion, purchase, trial expiry, and public-demo interactions). Each carries an anonymous client identifier, the Google Click ID (gclid) when present, and event timestamps; the purchase event also carries the plan, the amount charged and currency, and an opaque payment-processor transaction reference. No teacher name, email, IP address, or other personally-identifying information is sent to GA4. Governed by the Google Analytics Terms of Service. |
| Google Ads | Not in use. We do not run advertising campaigns | Nothing. Our analytics property has no Google Ads account linked to it, so no data reaches Google Ads. The attribution machinery described in Section 6.2 exists in our code and has never carried anything. If we ever start advertising we will update this policy first |
| Stripe | Subscription billing and payment processing for paid plans | Teacher billing information. ClassLens sends Stripe the teacher's email address, the teacher's ClassLens account identifier (the Google account ID, so the payment maps to the correct account), and the selected plan. Name, billing address, and payment-method details are entered by the teacher directly into Stripe's hosted checkout and are not collected or stored by ClassLens. We process Stripe webhook notifications to manage subscriptions and to send the purchase and trial-conversion analytics events described in Section 6.2, which carry the plan and the amount paid and no name, email, or card detail. ClassLens retains only the Stripe customer and subscription identifiers and the resulting subscription status (for example, whether a plan is scheduled to cancel). No student data is ever sent to Stripe. Governed by the Stripe Services Agreement and the Stripe Data Processing Agreement. |
| Amazon Web Services (AWS) | Cloud hosting for the ClassLens application, database, and cache | ClassLens runs on AWS infrastructure in a U.S. region. The AWS-hosted database and cache hold teacher account data (such as email address, encrypted Google OAuth tokens, and subscription records) on an ongoing basis. Student submission content is processed in application memory on AWS during grading and is not written to the database or cache (files are staged in Google Cloud Storage, described above). For jobs the teacher reviews in the in-app Batch Review Dashboard, the cache holds the drafted grades and feedback until the teacher releases grades; that review queue has a 24-hour expiry and the job cache a 48-hour expiry. Automatic expiry is the failsafe; it bounds how long this data stays in the live cache if a delete fails. The cache also saves its contents to disk so queued work survives a restart, and an expired or deleted entry can remain in that file until it is next compacted; student data in it is stored encrypted. ClassLens self-manages the application, database, and cache on AWS compute and storage. Governed by the AWS Data Processing Addendum. |
6.1 Vertex AI Data Handling
AI evaluation is performed by Google Cloud Vertex AI under the Google Cloud Data Processing Addendum (CDPA). Customer data is not used to train Google's foundation models. Google Cloud Vertex AI is enrolled in Zero Data Retention (ZDR) at the project level: Google's Generative AI Services team confirmed the exception to the standard prompt logging policy on 2026-04-30 for Cloud project 135589175772 (the production Vertex AI project for ClassLens), which removes the abuse-monitoring retention window that would otherwise apply to inference inputs and outputs. Cloud Audit Logs on aiplatform.googleapis.com provide an immutable audit trail of every inference call. ClassLens uses Google Gemini models through Google's US multi-region Vertex AI endpoint for grading, rubric generation, and knowledge gap reports. Inference stays within the United States, rather than a single US region.
File handling: each student submission is downloaded from Google Classroom into ClassLens server memory, uploaded to a private Google Cloud Storage bucket controlled by ClassLens, referenced by Vertex AI via a gs:// URI for inference, and deleted from Cloud Storage immediately after grading. The Cloud Storage bucket is in a U.S. region, has public-access prevention enforced, and is IAM-scoped to a least-privileged ClassLens service account. Files are deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours.
For an eligible grading job, we may cache the shared assignment, rubric, teacher instructions and grading context with Google Vertex AI for up to five minutes from the cache creation request. This explicit cache is limited to that job and is never reused across jobs or customers. It excludes student submission files, submission filenames, student profile fields, rosters and reference-file bytes. Teacher-entered assignment, rubric and reference text may itself contain personal information. We request deletion when the job ends, times out or the account is deleted; automatic expiry limits the cache lifetime if early deletion fails. We do not extend the expiry.
Separately, Google's existing in-memory caching is enabled for our project. It may hold inference inputs, outputs and derived data in project-isolated memory with a 24-hour expiry. This is not stored at rest and follows the selected location's residency requirements. Google describes this memory cache as consistent with its Zero Data Retention definition. Our no-prompt-logging approval removes abuse-monitoring logging; it does not mean that no temporary cache exists. The five-minute limit above applies only to our explicit job cache, not all provider memory. See Google's data retention documentation.
We do not use grounding or share submissions across customers.
6.2 Marketing Analytics and Conversion Tracking
We use Google Analytics 4 (GA4) to attribute first-time signups to marketing campaigns and to record a small, fixed set of server-side conversion, public-demo and subscription-lifecycle events described below. We do not load any analytics or advertising script in your browser, and no page you visit is measured as a page view, with one exception we would rather name than have you find: opening the public demo sends a single demo_viewed event from our server, listed with the other demo events below. We never send student data to these services.
We do not currently run advertising campaigns, and our analytics property has no Google Ads account linked to it, so the attribution path described in this paragraph is dormant. It works as follows if we ever use it. When a visitor arrives at a classlens.com marketing page from a Google Ads click, the URL contains a Google Click ID (gclid) parameter. We write this value to a first-party cookie named "_gcl_aw" with a 90-day expiration so we can attribute a subsequent signup to the originating ad click. It is a first-party cookie on the classlens.com domain.
Separately from that dormant path, we set a first-party cookie named "cl_cid" on your first visit to any classlens.com page. It holds a randomly generated identifier (UUID v4), lasts 90 days, and is used only with the signup and demo events described below. If you opt out on our Do Not Sell or Share page, we set a cookie named "cl_optout" for about 13 months to remember your choice, and we set no marketing cookies. A Global Privacy Control signal from your browser means we set no marketing cookies either.
When a teacher completes Google OAuth and creates a ClassLens account for the first time, we send a server-side "sign_up" event to GA4. The event payload contains the gclid (when present), the anonymous cl_cid identifier, the event name, and a timestamp. It does not contain the teacher's name, email address, hashed email, IP address, or any account credential. We treat the cl_cid and gclid as "online identifiers" under applicable privacy law (including the California Consumer Privacy Act, the EU General Data Protection Regulation, and equivalent frameworks) and disclose them as such in this section. The event fires once per first-time signup and is not fired on returning logins or on subsequent navigation within the application.
Marketing-page analytics is deployed only on classlens.com marketing pages, which are directed to educators and school administrators, not to children. GA4 and Google Ads tracking is never deployed in any student-facing flow or anywhere student data is processed.
Beyond the first-signup event above, ClassLens sends a small, fixed set of opaque conversion and subscription-lifecycle events to GA4: starting a free trial, converting a trial to a paid plan, completing a purchase, and a free trial expiring. These fire server-side when your billing or subscription state changes. The trial and expiry events carry only a randomly generated ephemeral identifier, the event name, and a timestamp. The purchase event additionally carries the plan you purchased, the amount charged and the currency, and an opaque payment-processor transaction reference; Google cannot resolve that reference to you, though we can associate it with your own billing record. None of these events contains your name, email address, IP address, account credentials, or any student data, and Google ad personalization is disabled on every one of them. Because they fire from server-side state changes rather than your browser, they are not linked to your browser session.
We don't send what you do inside the app to any analytics or advertising service. Our server logs do record some events from the review screen, such as whether a file opened, how long it took to load, or that you opened it in Google Drive. We use them to fix problems and to improve how files open. They carry no file name, student name or student work, and they are kept under the server-log retention in Section 7. The only analytics we send are the marketing-page, signup, public-demo and subscription-lifecycle events described in this section.
On the public demo at classlens.com/demo, which requires no login, we record a small set of interaction events, for example that the demo was viewed, a sample finding was opened, or the demo call-to-action was clicked. Each event carries at most a short label chosen from a fixed predefined list, never free text, and is associated with the anonymous cl_cid identifier so that a demo visit can be attributed to a later signup. No student data is involved.
You have multiple ways to opt out:
- Opt out of Google ad personalization: https://myadcenter.google.com/. This stops Google from using your data to personalize ads but does not stop GA4 measurement.
- Opt out of cross-context behavioral advertising sharing (California residents): use the Do Not Sell or Share My Personal Information link in our site footer, or set the Global Privacy Control (GPC) signal in your browser; we honor GPC automatically and skip the browser-originated GA4 and Google Ads events for any visitor whose browser signals it. The server-side conversion and subscription-lifecycle events fire from state changes with no browser request, so there is no browser signal to read at the moment they fire.
- Block cookies in your browser: blocking the attribution cookies stops conversion attribution for your visit. Blocking all cookies also stops you signing in, because the sign-in session itself is held in a cookie.
- Request deletion of GA4 data already collected: contact steven.swanson@evolvedacademics.com with the cl_cid value from your browser's cookie store; we will issue a GA4 data deletion request for that identifier. The server-side conversion and lifecycle events use per-event random identifiers not linked to your cl_cid; on request we will also delete the purchase records associated with your billing account.
In our GA4 property, event-level data is retained for 2 months and user-level data for 14 months, after which Google deletes it. Aggregated reports are retained indefinitely. We do not currently run advertising campaigns, so there is no Google Ads conversion data. Both services may transfer data outside your country of residence (including from the European Economic Area to the United States) under Google's Standard Contractual Clauses and the EU–U.S. Data Privacy Framework.
6.3 California Residents — Sale and Sharing of Personal Information
Under the California Consumer Privacy Act, as amended by the California Privacy Rights Act (collectively, "CCPA"), Google Ads conversion attribution would be considered "sharing" of personal information for cross-context behavioral advertising. We do not currently run advertising campaigns, and our analytics property has no Google Ads account linked to it, so that attribution path is dormant and no such sharing takes place. If we ever use it, the Google Click ID (gclid) from an ad click would travel with our server-side signup event so we could measure whether the click resulted in a signup. We will update this section and the Do Not Sell or Share page before that happens.
We do not sell personal information for monetary consideration, and we do not share personal information with third parties for their own purposes. We disclose it only to the service providers and subprocessors that operate the Service on our behalf, including those listed in Section 6 above, and only as needed to provide the Service.
To opt out of sharing for cross-context behavioral advertising:
- Use the Do Not Sell or Share My Personal Information link in our site footer.
- Enable the Global Privacy Control (GPC) signal in your browser. We honor GPC signals automatically and will skip GA4 and Google Ads fires for any visit where GPC is set to enabled.
These opt-outs apply to your browser. If you visit ClassLens from a different browser or device, you may need to set the opt-out again.
7. Data Retention
The application's general email attempt and delivery records expire after 48 hours. Keyed recipient suppression digests expire 90 days after a bounce or complaint. These digests are pseudonymous. SES keeps addresses on its suppression list until they are removed; local expiry does not remove them. Direct requests to support to stop email are recorded in the provider suppression list. Onboarding and trial email unsubscribe links use a separate local opt-out record and do not stop essential account or policy notices or feedback you ask ClassLens to send. We keep a keyed code derived from your email address, along with the date you opted out, indefinitely, including after account deletion, to honor that opt-out if you sign up again. This record is pseudonymous, not anonymous, and contains no email address or message content. There is currently no option to restart these emails after unsubscribing. Separate onboarding and trial delivery and pilot enrollment records contain an account identifier and are deleted with the account. We also retain a teacher-account and policy-version notice record, without the address or message body, until account deletion. Copies received in the teacher's, student's, founder's or support mailbox follow that mailbox's retention settings and are not erased by these application timers.
| Data Type | Purpose | Retention Period | Deletion Method |
|---|---|---|---|
| Onboarding and trial email opt-outs | Onboarding and trial email preferences and bounded delivery | A keyed code derived from the email address, together with the separately stored opt-out date, are retained indefinitely, including after account deletion, solely to honor the opt-out on a later signup. The code is pseudonymous, not anonymous. No email address or message content is stored in this record. There is currently no option to restart these emails after unsubscribing. | No scheduled deletion; retained to honor your opt-out. |
| Onboarding and trial email delivery records | Onboarding and trial email preferences and bounded delivery | Account identifier, email type, send status and attempt time, retained until account deletion to prevent repeated emails. These records are deleted with the account. | Deleted with the account. |
| Onboarding and trial pilot enrollment records | Onboarding and trial email preferences and bounded delivery | Account identifier and enrollment time, retained until account deletion. These records are deleted with the account. | Deleted with the account. |
| Onboarding and trial pilot controls | Onboarding and trial email preferences and bounded delivery | Campaign and daily counts and pause state, retained while the pilot can run so account deletion cannot restore its send allowance. These aggregate records contain no mailbox or account identifiers. | Kept while the pilot can run. |
| Teacher account data | Account identification, communication, billing | Duration of active account + deleted within 30 days of account termination | Database deletion via account deletion endpoint, in a single transaction. Your account record and the tables that exist only for you are deleted outright. A small number of records are kept instead with your Google ID replaced by a one-way hash, because they are another person's audit or provenance record or an abuse-prevention tombstone; see "Records kept after account deletion" below. Deleting your account removes onboarding and trial email delivery and enrollment records. A separate pseudonymous opt-out code and opt-out date remain indefinitely to honor your email preference if you sign up again. Aggregate pilot counts contain no mailbox or account identifiers and remain while the pilot can run. |
| OAuth tokens | Authenticated access to authorized Google Classroom, Drive, and Sheets services APIs | Duration of active account + deleted within 30 days of account termination | Deleted upon account deletion; revocation is requested from Google on a best-effort basis. |
| Vertex AI explicit job prompt cache | Reuse shared grading context within one eligible job; reduce repeated prompt processing | Up to five minutes from the cache creation request; never extended | Best-effort deletion on job completion, timeout or account deletion; automatic provider expiry if deletion fails. Scope in Section 6.1. |
| Explicit-cache coordination records | Opaque job identifier, resource handle, status and hash; no prompt or student content | Up to 48 hours; a closure marker may remain after account deletion | Automatic Redis expiry. Closure markers prevent a delayed worker from recreating a provider cache after cleanup. |
| Google inference memory cache | Provider performance improvement; inputs, outputs and derived data, isolated to our project | 24-hour expiry in memory; not stored at rest | Google-managed automatic expiry; separate from the explicit five-minute job cache |
| Grading preferences | Configure AI grading behavior per teacher's pedagogy | Duration of active account + deleted within 30 days of account termination | Deleted upon account deletion |
| Grading job metadata (no student PII) | Billing reconciliation, usage tracking, subscription quota enforcement | 12 months after the job completes (or after it was created, for a job that never completed), or on account deletion, whichever comes first. Contains no student data. | Automated monthly purge once older than 12 months; deleted immediately upon account deletion |
| Student submissions (transient: server memory and Cloud Storage staging during grading) | AI evaluation against teacher-configured rubric | Duration of a grading job. No copy of the submission is kept for review: in Grade & Review mode the review queue holds the drafted results, each student's name and email address, and the names, links and version details of their files (no file content) until the teacher releases or keeps the grades, with a 24-hour expiry. Draft Only feedback follows the separate row below; it contains no submission files or attachment links. | Deleted when the teacher returns grades; 24-hour automatic expiry on the review queue and 48-hour expiry on the encrypted job cache, as the failsafes. The Cloud Storage staging copy is deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours |
| Draft Only feedback view | Let the teacher read generated feedback alongside draft grades. | In Draft Only mode, ClassLens keeps an encrypted copy of student display names, submission identifiers, scores, criterion results and generated feedback for up to 24 hours from the start of the job. This view is available only to the teacher who ran the job. It does not send feedback to students. | Account deletion removes access and attempts to delete the copy. If that deletion fails, the copy still expires on its own 24 hours from the start of the job. Opening the view does not extend the window. Returning a grade in Google Classroom does not delete this separate ClassLens copy. |
| Cloud Storage submission staging | Transient file staging for Vertex AI inference | Best-effort delete call after grading; a bucket-level lifecycle rule is the safety net | Deleted after grading; a bucket rule automatically deletes anything left after 1 day, typically within 48 hours |
| Session data (Redis) | Maintain authenticated login state | 7-day idle window, 30-day absolute maximum; destroyed on logout | Automatic Redis key expiration: the session key expires after 7 days of inactivity and is capped at a 30-day absolute lifetime. Also deleted on explicit logout. On account deletion the session that made the request is destroyed at once; a session still open on another device can no longer sign in to anything and expires on the schedule above. |
| Server logs | Debugging, performance monitoring, security incident response | Application error records in our database (message, stack trace, route and release, with names, emails and account identifiers scrubbed before the record is written; a salted one-way hash of the teacher's account may be attached so repeated errors for one account can be grouped): 90 days. Application logs on the server: capped by size under the server's journal, and kept no more than 60 days. Web-server logs: the operating system's default daily rotation; we set no separate period for them. Local monitoring and backup log files: rotated daily, 14 copies kept. Copies of the application, web-server, monitoring and system audit logs are also shipped to an encrypted offsite archive for security monitoring and audit evidence; archived copies move to cold storage after 90 days and are deleted after 365 days. | Automated monthly purge of error records once older than 90 days; logrotate for local log files |
| Knowledge Gap Reports (aggregate, de-identified) | Class-wide learning pattern analysis for instructional improvement | 12 months after the grading job it belongs to completes (or was created, if it never completed), or on account deletion, whichever comes first. Contains aggregate class-level data only (criterion names, met/not-met counts, teaching recommendations); no individual student names, IDs, or PII. | Automated monthly purge with the parent grading job once older than 12 months; cascade-deleted when the teacher account is deleted |
| Deleted account tombstones | Free-tier abuse prevention | 24 months after account deletion. Contains only a one-way SHA-256 hash of the Google ID, a lifetime submission and token count, the free-trial dates, the date of deletion, and the opaque Classroom course id the trial was anchored to; non-reversible, and cannot be linked to a person without the original Google ID. | Automated monthly purge once older than 24 months; manual purge earlier upon request if the original Google ID is provided for verification |
| Records kept after account deletion | Keeping another person's audit or provenance record intact when they are still using ClassLens, honoring a student opt-out that was set through your account, and preventing a closed-and-reopened account from claiming a fresh free trial | These records are not deleted with your account. In every one, your Google ID is replaced with the same one-way SHA-256 hash described in the row above, so the record keeps its shape and stops naming you. The records are: the free-trial course anchor, which holds an opaque class identifier, the hash, and the date it was set; the approval stamp on a rubric that belongs to another teacher who is still using ClassLens; and the note of which teacher set a student AI-grading opt-out, kept so that opt-out keeps protecting that student in classes they share with other teachers. For a teacher who was in a district, the district admin audit log also keeps any record that names them, whether they took the action themselves or it was taken on their account. For a teacher who was themselves an administrator, three more: the district administrator record, which is also marked removed; the note on another administrator's record that this teacher was the one who granted their access; and the record of any teacher onboarding list they uploaded. None of these records contains a name or an email address. | Pseudonymized in place during the same account deletion transaction. The tombstone and the student opt-out each have their own row in this table and are deleted on the 24-month period stated there. The rest have no scheduled deletion date. The district admin audit log is kept deliberately, because it is the district's own tamper-evidence record of who granted and revoked administrator access; the others are kept because deleting them would damage a record that belongs to someone else, or would let a closed account claim a second free trial. You can ask us to remove any of them. Two short-lived items are not rewritten because they expire on their own: a sign-in session on another device you did not sign out of, which expires after 7 days of inactivity and no later than 30 days, and an abuse-control counter that expires within an hour. |
| Per-student grading history | Legacy resubmission-detection records from an earlier version of the grading pipeline; no longer written | Opaque Google Classroom student id, course and assignment ids, and the time last graded (no names, emails or scores): 12 months after the grading job it belongs to, or on account deletion, whichever comes first. | Automated monthly purge with the parent grading job once older than 12 months; cascade-deleted when the teacher account is deleted |
| Per-submission billing ledger | Records that a submission was already handled, so a repeat or retried grading job cannot bill or grade it twice | Opaque Google Classroom submission id, the job it belongs to, whether it was graded, skipped, or errored and why, and token and credit counts (no name, email, schoolwork, or score): 90 days after the submission was handled. | Automated monthly purge once older than 90 days |
| Student AI-grading opt-outs | Honor a request, made through the school, that a student's work not be graded with the AI-assistive grading tool | Opaque Google Classroom student id and class id, the identifier of the teacher who set it, and the times it was created and last applied (no name, email, or schoolwork): 24 months after the opt-out was last set, re-saved by the teacher, or applied to a grading job, whichever is most recent. Any of those three refreshes the clock, so an opt-out that is still being set or honored is not reached by the purge; one on a class nobody has graded or revisited for 24 months is. | Removed by the teacher at any time in Grading Settings; automated monthly purge once unused for 24 months. Kept if the teacher's account is deleted, with the teacher identifier replaced by a hash, so that deleting one teacher's account cannot resume AI grading for a student a co-teacher still shares the class with |
| Waitlist and product-update signups | Contact list for people who sign up on our public pages or submit a district review request | Email address, optional name, optional school district name, and the page the signup came from: 6 months from signup. | Automated monthly purge once older than 6 months; also deleted when a teacher account with the same email address is deleted |
| District invitations | Inviting a teacher to join a district's ClassLens account at the district administrator's request | Invitee first name, last name and email address; the inviting district and administrator; the dates the invitation was created, when we attempted to email it and when it was sent, when it expires and when it was claimed, and its status; the import batch it came from; and, once claimed, the Google account identifier of the teacher who claimed it. Kept while the invitation is pending; once it is claimed, expired or canceled, 12 months from the claim or expiry date. | Automated monthly purge of claimed, expired and canceled invitations once older than 12 months; a pending invitation is not purged by age. Also deleted when the invitee deletes their teacher account. |
| Policy acceptance log | Proof of which Terms of Service and Privacy Policy versions each teacher accepted, and when (see Section 13) | Terms of Service version, Privacy Policy version, date and time, and the IP address and browser user agent at acceptance, tied to the teacher account: life of the account. | Deleted with the account via the account deletion endpoint. Not subject to a periodic purge. |
| SOC 2 report requests | Verifying the requesting organization and delivering the SOC 2 report under NDA; abuse prevention on the request form | In our request database: name, title, organization, organization type, website, email and the stated reason for the request, 12 months; submitting IP address and browser user agent, 90 days. The mailbox copy noted alongside is not covered by these periods. | Automated monthly purge (1st of each month): the IP address and user agent are erased in place from our request database once older than 90 days, and the whole record is deleted once older than 12 months. A copy of each request also reaches our internal security mailbox. |
Backups. We take an encrypted backup of our database every night for disaster recovery. Deleting a record from the live system on the schedule above does not reach the copies already held in backups. Those copies age out on the backup cycle: local copies are deleted after 14 days and offsite copies after 30 days. Amazon Web Services applies the offsite deletion asynchronously, so removal can lag a few days past 30 days. Backups are used only to recover the Service after a failure and to test that recovery in periodic restore drills.
Deleting your account removes access to Draft Only feedback-view copies and attempts to delete them. If that deletion fails, they still expire on their own 24 hours from the start of the job.
8. Data Security
We implement industry-standard security measures to protect the data we process:
- Encryption at rest: Server disk volumes and database backups are encrypted at rest at the infrastructure layer (encrypted EBS volumes). OAuth access and refresh tokens receive an additional layer of application-level encryption using AES-256-GCM before being written to the database.
- Encryption in transit: All data transmitted between our servers, Google APIs, Cloud Storage, and Vertex AI uses TLS (Transport Layer Security): TLS 1.2 minimum, TLS 1.3 negotiated where the client supports it.
- No public-facing database ports: All databases and caches are hosted on private networks and are not directly accessible from the internet.
- Parameterized queries: All database queries use parameterized statements to prevent SQL injection attacks.
- Least-privilege access: Each service component has only the minimum permissions necessary to perform its function.
- Secure tunnel architecture: Our application is accessed through a Cloudflare tunnel, which eliminates the need for open inbound ports on our infrastructure.
9. FERPA Compliance
The Family Educational Rights and Privacy Act (FERPA) governs the privacy of student education records. Evolved Academics is designed to operate in compliance with FERPA.
9.1 School Official Designation
Evolved Academics operates as a "school official" under FERPA (34 CFR 99.31(a)(1)(i)(B)) when authorized by the school or district. We perform an institutional service (grading assistance) that the school would otherwise use its own staff to complete. We require institutional authorization, through a Data Processing Agreement (DPA) or equivalent authorization from the school or district, before processing student education records.
9.2 Institutional Authorization Required
FERPA authorization must come from the school or district, not from individual teachers alone. We require that teachers confirm their school or district has authorized the use of AI grading tools before processing student data. We execute the SDPC National Data Privacy Agreement, or a district's own data processing agreement, and we encourage districts to put one in place.
9.3 Direct Control
The school maintains direct control over student data processed by the Service. Teachers initiate every grading action. No student data is processed without explicit teacher initiation. ClassLens deletes application grading copies of submission content, grades and feedback after the job or its deletion failsafes, within 48 hours (for the live cache; Section 6 describes encrypted entries that can remain in the cache's on-disk file until it is compacted). Provider caches, email delivery and suppression records, and recipient mailboxes have the separate retention periods described in Section 7. Schools and districts may request deletion at any time.
9.4 No Redisclosure
We do not redisclose personally identifiable information from student education records except to approved subprocessors (such as Google Cloud Vertex AI and Google Cloud Storage, and Cloudflare, which carries traffic between the teacher's browser and ClassLens in transit) as disclosed in this policy. The authorization to process comes from the school or district, confirmed by the teacher when they accept our Terms. Where a school or district has executed a data privacy agreement with us, that agreement governs the disclosure as well; no district has executed one with us yet. Subprocessors are contractually bound to use student data only for the educational purpose for which it was disclosed.
10. Children's Privacy Notice (COPPA)
Evolved Academics, LLC ("we," "us," "ClassLens") operates ClassLens (https://www.classlens.com), a teacher-facing web application that integrates with Google Classroom for AI-assisted grading. This notice describes our practices regarding children's personal information as required by the Children's Online Privacy Protection Act (COPPA) and the 2025 COPPA Rule amendments (16 CFR 312).
10.1 Who Uses ClassLens
ClassLens is designed for teachers and authorized school staff. Students do not need a ClassLens account for their work to be graded. Sign-in does not check whether an account holder is a teacher, and an existing Classroom course is not required to explore ClassLens. The course list shows only Google Classroom courses where the signed-in account is a teacher. If someone who is not a teacher completes sign-in, the same account record is created, including their Google account identifier, name, email address, the Google sign-in tokens they granted, and a free subscription. These account records follow the account retention and deletion rules in Section 7.
10.2 What Children's Information We Process
When a teacher initiates a grading job, ClassLens transiently processes the following children's information via the teacher's Google Classroom account:
| Data Element | Purpose | Stored? |
|---|---|---|
| Assignment submissions (text, documents, PDFs, images) | AI grading against teacher's rubric | Never kept — graded and deleted. Grade & Review keeps only the drafted results, not the submission, until the teacher releases or keeps the grades (24-hour failsafe expiry) |
| Student names | Personalized feedback | Used for personalized feedback. Application result copies are temporary; provider caches and email copies follow the periods and exceptions in Sections 6 and 7 |
| Google Classroom IDs (opaque) | Match submissions to the correct student; prevent duplicate grading of the same submission; record a standing AI-grading opt-out where a teacher has set one | Opaque only in persistent storage — see Section 5.2 for the full in-memory vs persisted breakdown |
| Student email addresses | Optional email delivery of feedback | Used to send teacher-requested feedback. Application review copies are temporary; SES suppression addresses remain until removed, and local suppression digests last 90 days. Email copies follow mailbox retention. See Section 7 |
10.3 How Children's Information Is Used
Children's information is used solely to generate grades and feedback at the teacher's direction. We do not use children's information for advertising, marketing, AI model training, profiling, or any purpose other than the educational grading service.
10.4 How Long We Keep Children's Information
Application copies of schoolwork, grades and feedback are temporary. In Grade & Review mode, results are held for teacher review and removed when released or kept, with at most 48 hours as the outer expiry bound if the job is not finished (for the live cache; Section 6 describes encrypted entries that can remain in the cache's on-disk file until it is compacted). Our explicit job prompt cache lasts up to five minutes; Google separately uses a project-isolated inference memory cache with a 24-hour lifetime. These provider practices are explained in Section 6.1. Email delivery also creates the limited records described in Section 7: 48-hour opaque delivery records, 90-day local suppression digests, and SES suppression addresses kept until removed. Received messages can remain in student, teacher or support mailboxes under their own retention settings. Opaque grading and opt-out records may also outlive a job, as listed in Section 7 (Data Retention) for our full retention policy. For detailed information about our data retention practices, including specific timeframes and deletion procedures for each data category, see our Written Data Retention Schedule, available upon request at steven.swanson@evolvedacademics.com.
10.5 Who We Share Children's Information With
Student submission content is processed by Google Cloud Vertex AI (with files staged via Google Cloud Storage) for AI evaluation, governed by the Google Cloud Data Processing Addendum. Customer data is not used to train Google's foundation models. Google Cloud Vertex AI is enrolled in Zero Data Retention (ZDR) at the project level: Google's Generative AI Services team confirmed the exception to the standard prompt logging policy on 2026-04-30 for Cloud project 135589175772 (the production Vertex AI project for ClassLens), which removes the abuse-monitoring retention window that would otherwise apply to inference inputs and outputs. Section 6.1 separately describes provider caching. AWS hosts the application and its temporary processing stores; Cloudflare carries traffic between the teacher's browser and ClassLens in transit; Amazon SES receives student addresses and teacher-requested feedback for email delivery. Sections 6 and 7 describe these providers and their retention. We do not share children's information with advertisers or data brokers.
10.6 School Consent
We rely on school and district authorization under COPPA, consistent with FTC staff guidance that a school may consent on behalf of parents to the collection of students' personal information for educational purposes. A school or district acts as the agent for parents for educational-purpose data collection. Where a district wants that authorization set down in a contract, we execute the SDPC National Data Privacy Agreement or the district's own data processing agreement; teachers who sign up individually accept these terms themselves.
10.7 Parents' Rights
Parents retain the following rights regarding their child's data:
- Review: Request a description of the information collected from their child. Application grading copies of submission content, grades and feedback are deleted after release or expiry, within 48 hours (for the live cache; Section 6 describes encrypted entries that can remain in the cache's on-disk file until it is compacted). Section 7 (Data Retention) separately describes provider caches, email delivery and suppression records, and copies held by recipient mailboxes.
- Deletion: Request deletion of their child’s information. ClassLens deletes application grading copies on the mode-specific schedules in Section 7, with a 48-hour outer expiry bound for the live cache (Section 6 describes encrypted entries that can remain in the cache's on-disk file until it is compacted). Returning a Draft Only grade in Google Classroom does not delete its separate feedback view, which expires 24 hours from job start. We will purge a specific class’s application data on request. Provider caches, email delivery and suppression records follow Section 7. We cannot delete copies already delivered to recipient mailboxes.
- Opt out: Request, through the school, that their child's work not be graded with ClassLens. Teachers can exclude individual students from grading jobs in Grading Settings, and the exclusion applies to every later grading job for that class until the teacher removes it or it is purged as unused (Section 7). Excluded work is never read, never sent to the AI-assistive grading tool, and never billed; the teacher enters that student's grade themselves.
- No conditioning: ClassLens only accesses data necessary for the grading function requested by the teacher. We do not condition service on collection of more data than necessary.
To exercise any parental right, contact us at support@evolvedacademics.com.
10.8 Security
We maintain a written information security program including encryption (TLS 1.2 minimum in transit, TLS 1.3 negotiated where supported; AES-256-GCM at rest for sensitive data, AWS-managed KMS at the volume layer), access controls, annual risk assessments, and vendor due diligence. Full details are described in Section 8 (Data Security) and are available upon request.
11. California Privacy Rights
11.1 SOPIPA Compliance
The Student Online Personal Information Protection Act (SOPIPA, Cal. Bus. & Prof. Code 22584-22585) applies to operators of services designed and marketed for K-12 school purposes. Evolved Academics complies with SOPIPA by:
- Not engaging in targeted advertising using any student data
- Not building non-educational profiles of students
- Not selling student information to any third party
- Not using student data for any purpose other than the K-12 educational grading purpose
- Implementing reasonable security procedures
- Deleting student data upon school or district request
11.2 CalOPPA Compliance
In compliance with the California Online Privacy Protection Act (CalOPPA, Cal. Bus. & Prof. Code 22575-22579), this Privacy Policy is publicly posted and accessible from every page of our website. This policy describes the categories of personally identifiable information collected, the categories of third parties with whom information may be shared, and the process by which users can review and request changes to their information.
11.3 AB 1584 (Education Code 49073.1) Compliance
AB 1584 governs contracts between school districts and third-party technology providers in California. Evolved Academics supports AB 1584 compliance by:
- Executing the SDPC National Data Privacy Agreement, or the district's own data processing agreement, specifying data collection, usage, security measures, and deletion timelines
- Acknowledging that student-generated content remains the property of the student and the district
- Providing districts with the ability to access and request deletion of data
- Committing to breach notification in accordance with California law
12. Your Rights
As a teacher using Evolved Academics, you have the following rights regarding your personal data:
- Access: You may request a copy of the personal data we hold about you.
- Correction: You may request that we correct any inaccurate personal data.
- Deletion: You may request that we delete your account and the data associated with it. Upon receiving a deletion request, we will delete your teacher account data, revoke your OAuth tokens, and remove your grading preferences. A tombstone record is kept afterwards, holding a one-way hash of your Google ID rather than the ID itself; Section 7 describes what it holds and how long we keep it.
- Data portability: You may request a copy of your grading settings and preferences in a machine-readable format.
- Revoke access: You may revoke the Service's access to your Google account at any time through your Google account settings.
Schools and districts may exercise rights on behalf of teachers and students, including requesting access to or deletion of all data associated with their institution. To exercise any of these rights, contact us at support@evolvedacademics.com.
13. Changes to This Policy
We may update this Privacy Policy from time to time to reflect changes in our practices, technology, legal requirements, or other factors. When we make material changes, we will:
- Update the "Last Updated" date and version at the top of this policy
- Require your affirmative re-acceptance in the app before you continue using the Service. You will see the revised policy at your next sign-in and must accept it to proceed
- Notify any school district that has executed a Data Processing Agreement with us, on the terms that agreement sets
A revised policy does not apply to you until you accept it. We do not treat continued use as acceptance of a material change. Each acceptance is written to an append-only consent log tied to your account, recording the Terms of Service version and Privacy Policy version in force when you accepted, the date and time, the IP address recorded with the request, and your browser's user agent. For acceptances recorded before September 7, 2026, the stored IP address came from a request header that the sending browser or device could set, so it is not verified proof of where the acceptance came from. The log is kept for as long as your account exists and is deleted with it. You may request a copy of your own consent record at any time.
14. Contact Us
If you have questions or concerns about this Privacy Policy, our data practices, or if you wish to exercise any of your rights, please contact us:
We aim to respond to all inquiries within 30 days. For urgent matters related to data breaches or student privacy concerns, we will respond within 72 hours.