Quick start

From zero to 400 words a minute in about five minutes.

Six steps, a table of settings by skill level, and the mistakes worth avoiding. No account needed — the app is a single page that runs entirely in your browser.

Watch it work first

The word stays put so your eyes don't. The icon carries meaning in parallel, and the amber letter is the fixation point.

live previewicon above word

Six steps

Do these in order. The whole thing takes about five minutes.

1
Open the app

Go to trainer.html. It loads with a sample passage already in place, so you can press play immediately and see what the format feels like before committing your own text.

2
Find your baseline

Start at 250 wpm and read a full paragraph. If you reach the end and can summarise it, raise the speed. If you can't, drop it. Your baseline is the fastest speed at which you can still summarise — not the fastest you can watch words go by.

3
Pick a pairing mode

Start with icon above word. Once that feels natural, try icon behind word — the watermark sits at the fixation point, so your eye never has to travel to see it. Icon replaces word is the interesting one: content words become pure icons and only function words stay as text.

4
Load something real

Open the Documents tab and drop in a PDF, DOCX, TXT, Markdown or HTML file — or paste text. Extraction happens in your browser; nothing is uploaded. Check the resolution report to see how many words resolved from the curated set versus generated tiers.

5
Add voice if it helps

Switch the voice engine to system for an instant test. If you like it, switch to neural — the voice ships with the site, so the only thing fetched is the ~5 MB WASM runtime, once. After that it runs offline. Keep sync on reader-led so the speech stretches to fit your WPM rather than capping it.

6
Push, then check

Raise the speed by 50 wpm and read another passage. Let the comprehension check run at the end. If recall stays above about 70%, the new speed is real — keep it. If it drops, come back down. Export the session to keep the record.

Recommended settings

Starting points, not rules. Adjust once you know how the format feels.

LevelSpeedWords / framePairing modeMotion
Beginner200–280 wpm1Icon above word1.2× — full gesture
Intermediate300–450 wpm1–2Icon behind word1.0×
Advanced450–700 wpm2–3Icon replaces word0.7× — subtle
Skimming700–1000 wpm3–4Icon only0.5×

On voice: speech caps out around 640 wpm because playback rate clamps at 4×. Above that, run silent — the icons carry the meaning channel on their own.

Six things that actually help

Most of the gain comes from technique, not from turning the number up.

Short sessions beat long ones

Ten focused minutes will do more than an hour of drifting. RSVP is demanding precisely because you can't rest between fixations.

Comprehension is the metric

A speed you can't recall from isn't a speed you've reached. Let the check run; treat 70% recall as the floor before you go faster.

Don't chase the icon

Let it sit in peripheral vision. If you find your eyes flicking up to look at it, switch to watermark mode — it puts the icon at the fixation point.

Ramp, then settle

Push 50 wpm above comfort for one passage, then drop back 25. The old speed will feel slow. That's the adaptation you're after.

Voice for hard material

On dense or technical text, the audio channel carries prosody the display can't. Turn it on for the difficult paragraphs and off for the easy ones.

Match mode to material

Narrative tolerates high speed and multi-word frames. Instructions and contracts don't — drop to one word per frame and let punctuation pauses do their job.

Questions

The ones that come up most.

Does speed reading actually work?

RSVP reliably removes saccade and regression time, which is a real cost. What it can't do is speed up comprehension itself — beyond a point you're trading recall for words per minute. The honest position is that most people can move from roughly 250 to 400–500 wpm on familiar material without losing much, and that gains past that come mostly from skimming rather than reading. The comprehension check exists so you can see where your own line is instead of guessing.

Why pair words with icons at all?

Dual coding: verbal and visual information are processed through partly separate channels, so a picture alongside a word can reinforce meaning without competing for the same capacity. The catch is that a wrong or generic icon adds noise instead. That's why the resolver disambiguates by sense and tells you which tier produced each icon — so you can discount the weak ones.

What happens with words you don't have icons for?

Nothing falls through to a blank. Unknown words are split into known parts where possible (riverbank → river + bank), derived from morphology (hopeless → hope + negation), looked up in 200,000+ open-source icons, or finally drawn as a deterministic procedural mark. That last tier guarantees complete coverage of any string you can type — hundreds of thousands of words reach a picture, which matters because the words that strand a dyslexic or fatigued reader tend to be the rare ones a smaller dictionary would have missed.

Is my document uploaded anywhere?

No. PDF and Word extraction runs in your browser via pdf.js and mammoth.js. The only network requests the app makes are for open-source icons it hasn't seen before, and the one-time neural voice model download — and both can be switched off entirely, after which everything works offline.

How good is the in-browser voice?

KittenTTS nano is a 15-million-parameter open-weight model, which is very small — it won't match a large hosted TTS service. It is the one that fits the job: bigger open models sound better but take longer to synthesise a sentence than to say it, so the voice falls behind the reader. This one runs about three times faster than it speaks. It runs on WASM everywhere. Nothing comes from a model host or a CDN: the 24 MB of weights, the 11 MB ONNX runtime and the 1 MB engine are all served from this site, cached on the first load, and offline from then on.

Why does the amber letter move around?

That's the optimal recognition point — the character your eye should land on. It sits slightly left of centre and shifts with word length, and the word is offset so that letter stays on the centre rail. It's why you don't need to move your eyes between frames. You can switch it off under focus point.

Can I add my own icons or words?

Yes. The icons and lexicon are two plain objects near the top of the script block in trainer.html. Icons are 24×24 SVG bodies using currentColor; lexicon entries are word: [[iconId, gloss, cues]]. Inflections resolve automatically, so you only enter base forms. Motion is inferred from the gloss unless you specify it.

Does it work on a phone?

The layout adapts and the reader works, but RSVP on a small screen at high speed is genuinely harder. If you're training seriously, use the largest screen you have and sit at a normal distance.

Ready when you are

No sign-up, no install. Open it and press play.