What Peabody Teach stores
For each kind of tool: what it keeps, where, and for how long, as the code does today. A line is left out when we cannot show it from the code. Each line names the file that does it, and a test reads those files.
Timers, wheel, groups, picker and seating chart
- The wheel, groups, picker and seating chart keep what you type (names, lists, settings) in this browser's local storage, on this device.
- A share link from the wheel, groups or picker holds the list inside the link, after the #. The seating chart has no share link.
- The wheel and picker can read a winner aloud with the browser's own speech, on the device.
Named class lists (optional, a signed-in teacher)
- A teacher signs in with a Peabody grown-up account to make a class.
- Kept on our server: the first names or nicknames the teacher adds, and for each assignment a score, a total, the seconds taken and a count of tries.
- Each name goes through a check built to turn away surnames, initials, digits and email addresses.
- A child types a six-letter class code, then taps their own name on the teacher's list (/join/class).
- Kept 90 days, then removed by a daily clean-up. The teacher can delete a class sooner.
Assignment links (/a on peabody.kids)
- A teacher makes one without an account. We keep the item chosen (a book, typing passage, math practice or quiz), the grade, an optional due date, a public key made in the teacher's browser, and a hash of the teacher's manage token.
- A child types a seat number from 1 to 99. We keep the seat number and the child's result, sealed on the child's device to the teacher's key. The teacher's private key stays in the teacher's browser, and we store only the sealed bytes.
- A typing course link keeps one sealed result for each seat and each lesson, up to 18 for a seat, with the lesson number beside the seat number. The speed and accuracy are in the sealed part.
- A result is removed 270 days after it arrives, and an assignment nobody has answered is removed after 30 days, by the daily clean-up.
Homework links (/hw on peabody.kids)
- A teacher makes one on Teach without an account. We keep its title and questions, and a hash of the results key.
- A child who already has a Peabody reader on that device opens it; anyone else is sent to get a reader first.
- For each child who hands it in we keep the reader's id, the pen name Peabody gave them, the score and the answers they picked. The teacher sees pen names, scores and picks.
- It is kept 30 days, and removed with its results about a week after that, by the daily clean-up.
Quiz links (/q on teach.peabody.kids)
- The questions travel in the link's address. A child's answers in the quiz are not sent to us.
- One exception: if a teacher made the link as a tracked link from a class list, opening it and finishing it each add one to a total on that link, with the score and the numbers of the questions missed first time. No name is in what is sent.
Live class games (/live and /join on teach.peabody.kids)
- The board and the students' devices pass messages through a relay (Supabase Realtime broadcast). Our code does not write those messages to a database.
- The room code is worked out from a public key made in the teacher's browser; our server stores nothing for it.
- A student types the six-letter room code, picks a game name from three the device offers, and in a typing race types the words shown.
AI helpers (optional)
- A switch on our side turns the helpers on or off, and it ships off. When it is off the pages say the helpers are not open yet.
- What you type is sent from your browser to our server, and from there to an AI model (through Anthropic's API).
- Before it is sent, code in your browser looks for names, email addresses, phone numbers, ID numbers, dates of birth, street addresses, links and school names and replaces them, and refuses text that looks like a student record. The server checks again. This is pattern matching, so type nothing you would not want sent.
- Our code does not store or log the text you type or the reply. It keeps counts under hashed ids (per browser, connection and day) and a spending record (the feature, the model, tokens and cost).
School colours (optional)
- A teacher can choose their school so Teach wears its colours. The choice (the school's id, name, town and state, and its two colours) is kept in this browser's local storage, on this device, and is not sent to Peabody.
- Searching for a school sends the letters typed, as they are typed, and an optional state, to Peabody's public school list, with no cookie and no page address. Our host's standard request logs can hold them, like any web request. Choosing a result sends nothing.
- Colours a teacher picks from the swatches are kept only on this device.
My desk sign-in (optional)
- A teacher can type an email address on My desk to get a sign-in link by email, so pinned tools follow them to another device.
- We keep the email, the pinned tools (a path and a title) and the codes of the assignment links they made (kind, item and grade), and, only if switched on, the school's number.
- If the teacher turns it on, the public number of their school is kept with the desk too, so other devices can wear its colours. Colours picked from swatches are never kept.
- Your profile rides with the desk too, so it follows you to another device: what you asked to be called (a classroom name like “Ms Rivera”; an email or phone number is refused), your grade, and, if you chose them, your state and role. Without a desk it stays in this browser.
- A desk not opened for 18 months is removed by the daily clean-up.
- Or a teacher can give just a name, with no email: we keep that name, the same pinned tools and codes, and their class, on our server, so Peabody remembers them on that device. Each name goes through the same check that turns away surnames, initials, digits and emails.
- With either kind of desk, the class goes to our server as its name and how many seats. The first names or nicknames go too only if the teacher ticks “Bring the names to my other computers” on My class; unticking removes them from the server and keeps them in that browser.
- A teacher can make a link that brings the class back on another device. Anyone with the link can see and change the class list, and making a new link ends the old one. Opening the link restores nothing until a button is pressed.
- A name-only desk that never saves a class is removed after 30 days, and one not opened for 6 months is removed too. The teacher can delete the desk and class at once. No one at Peabody browses these lists.
Counting visits (every page)
- Visits to pages on teach.peabody.kids and peabody.kids are counted with Peabody's own counter, Vercel's analytics and speed scripts, and a Google tag. The hosts they use are on the sheet for your IT person.
- Our own counter, the Google tag and Vercel's events are skipped in a browser that sends Global Privacy Control.
- This page lists where the counters load from, not what they record.
Not covered here
Other Teach pages that keep something are not described on this page yet.
For your IT person
A one-page sheet to print or forward: the addresses to allow and the optional ones. To check one page or game against your school's kind of filter, try Will it work at school?
More
The privacy page is Privacy, and the roster details are on Class roster privacy. Something here that looks wrong: hello@peabody.kids. Checked 8 November 2026.