Keystroke replay for student essays
A replay is the essay being written, played back. Not a video, not a score, not a guess — a reconstruction from the edits that actually happened, with times on them.
What is being recorded
While a student writes, the editor logs compact events: an insert with its position and text, a delete with its position and length, a cursor jump of more than one character, a blocked paste, drop or drag attempt with its size, window blur and focus, and a resume after a reload. Each carries a millisecond timestamp. Batches go to the server as the student writes, so a dead battery or a dropped Wi-Fi connection costs nothing.
Playing that log back in order rebuilds the document character by character. On the dashboard you scrub the timeline, jump straight to a marked moment, and run it at 1x, 5x or 20x. There is no camera, no screen capture, and nothing outside the writing box is observed — the log knows the window lost focus, never what was in the other tab.
The authorship report, field by field
Every session has a printable one-page report. These are the exact rows:
- Student — the name typed at the start.
- Assignment — your title.
- Started and Submitted — with a note if a time limit or due lock submitted it automatically.
- Elapsed / active time — minutes from start to submit, and minutes actually spent writing (gaps over 30 seconds are not counted as active).
- Final length — words and characters.
- Characters typed vs inserted — percent typed, plus how many characters arrived in insertions of 20 or more at once.
- Bursts — the percent of typed characters that arrived faster than 15 characters per second.
- Largest single insertion — in characters.
- Deleted — characters removed while writing, which is a decent proxy for real revision.
- Paste / drop attempts — the count, all blocked, and the characters attempted.
- Focus loss — how many times the window lost focus.
- Longest idle gap — in minutes.
- Reloads / resumes — how often the session came back on the same device.
- Verification — a report ID derived with a server-side key, the session ID, and a SHA-256 of the final text, so a printed report can be checked against the stored record.
- Final text — the essay itself.
At the top, either "No unusual patterns observed" or a short list of patterns worth a conversation. Sessions are flagged when more than 20% of typed characters arrived in bursts, when a single insertion was 100 characters or more, or when over half the text arrived as insertions. The report says in its own words that this is evidence, not a verdict, because a flag is a reason to look, not a decision. What a flag cannot do is covered in how to prove a student wrote it.
Open a real one
The demo dashboard is public on purpose, so you can see the actual thing before typing anything: writtenlive.com/t/demo/publicdemodashboardnotasecret. Two sample sessions are in it — one written normally, one with paste attempts, a large insertion, and machine-speed bursts. Click a name for the replay, then the report link for the printable page. It is a shared demo, so do not put anything private in it. Your own dashboard link is a long random token that only you have.
Privacy, in one paragraph
Stored: the name the student types, the text, and the timing log. That is the list. No student accounts or passwords, no email addresses kept with the work, no IP addresses stored alongside sessions, no third-party scripts, no analytics, no ads, and nothing is ever sent to an AI service or used to train anything. Everything is deleted automatically 180 days after the assignment is created. You can also delete it yourself at any moment: open your dashboard, scroll to the bottom, and use "Delete this assignment and all student work" — that wipes the assignment, every session, the text and the entire keystroke record immediately, and both links stop working. If you would rather not store names at all, tell students to enter an initial or a student number. Full detail on the privacy page.
Record your own session
Read next
- How to prove a student wrote it — evidence versus detector scores.
- Paste-proof writing assignment — running the session with no logins.
- The AI-proof in-class essay — how the period is structured, with an honest FAQ.
- An AI detector flagged my student's essay — why detectors misfire and what actually settles it.
- Google Docs version history vs a process replay — what version history shows and what it misses.
- In-class writing assignments that can't be pasted — six designs that work in one period.
- Process-based writing assessment — a rubric for drafting evidence, and how to show it to parents.