Word lists dataset
Two files carry the lists shown on word lists by grade: 38 English lists (1,079 different words) placed from Pre-K to Grade 3, and 216 lists in five other languages. Free to download and reuse under CC BY 4.0. The files hold word lists only: no child's data of any kind.
Files
| File | Contents | Address |
|---|---|---|
word-lists.json | Every list grouped: words, groups (word families), grade range, placement basis, page URL and update date, plus the grade levels, the placement bases explained, the license and the citation. | https://dyslexiasteps.com/data/word-lists.json |
word-lists.csv | One row per word: language, grade range, section, list, group, word, placement basis and source links. | https://dyslexiasteps.com/data/word-lists.csv |
Both are static, served with CORS open (Access-Control-Allow-Origin: *) and cached for an hour, so a browser app can fetch them directly. The same files ship in the npm package dyslexiasteps-data.
CSV columns
| Column | Values |
|---|---|
language | en, de, es, fr, nl, pt-br |
grade_from, grade_to | Pre-K, Kindergarten, Grade 1, Grade 2 or Grade 3 (empty for lists in other languages) |
section | cvc, families, sight, digraphs, patterns (English) or wordlist (other languages) |
list_id, list_title | Stable list id (for example short-a) and its title |
group | Word family or group inside the list, when the list has one |
word | The word |
placement_basis, placement_url | Source of the grade placement: Dolch (1936), a Common Core item or Typical sequence, with a link |
list_url | The page of the list on dyslexiasteps.com |
updated | Last update of the list (YYYY-MM-DD) |
How grades were placed
| Basis | Kind | Meaning |
|---|---|---|
| Dolch (1936) | classic | Dolch's grade levels for his basic sight vocabulary (public domain). |
| RF.K.2.a | standard | Kindergarten: recognize and produce rhyming words. |
| RF.K.2.c | standard | Kindergarten: blend and segment onsets and rimes (the vowel-plus-ending part) of one-syllable spoken words. |
| RF.K.2.d, RF.K.3.b | standard | Kindergarten: isolate the sounds in three-sound consonant-vowel-consonant words and link the short vowel sounds to their common spellings. |
| RF.1.2.b | standard | Grade 1: blend spoken sounds into one-syllable words, including consonant blends (the standard covers spoken sounds, not print). |
| RF.1.3.a | standard | Grade 1: know the spelling-sound patterns for common consonant digraphs. |
| RF.1.3.b | standard | Grade 1: decode regularly spelled one-syllable words (nonsense words test exactly this). |
| RF.1.3.c, RF.2.3.a–c | standard | Grade 1: know final -e and common vowel team conventions for long vowels; Grade 2: tell long and short vowels apart, learn additional vowel teams and decode two-syllable words with long vowels. |
| Typical sequence | typical | Common placement in structured literacy programs. No standard names it, and programs differ. |
A grade is a typical guide, not a rule. Full explanation: how word lists are placed by grade.
Examples
curl -s https://dyslexiasteps.com/data/word-lists.json | jq '[.lists[] | select(.language=="en" and .gradeFrom=="Kindergarten") | .title]'import { listsForGrade, wordsForGrade, listById } from "dyslexiasteps-data";
listsForGrade("kindergarten").map((l) => l.title);
wordsForGrade("grade-1").length; // every different word from the lists that cover Grade 1
listById("short-a").basis; // "RF.K.2.d, RF.K.3.b"import pandas as pd
df = pd.read_csv("https://dyslexiasteps.com/data/word-lists.csv")
df[(df.language == "en") & (df.grade_from == "Grade 1")].groupby("list_title").word.count()df <- read.csv("https://dyslexiasteps.com/data/word-lists.csv")
subset(df, language == "en" & grade_from == "Kindergarten")License and citation
The compilation (selection, grouping, grade placement and descriptions) is CC BY 4.0. The Dolch words themselves are public domain. Grade placement is a typical guide: programs and standards differ, and it is not a diagnosis. Licence: CC BY 4.0.
Dyslexia Steps (2026). Word lists by grade, Pre-K to Grade 3, with placement basis. dyslexiasteps.com/word-lists-by-grade. CC BY 4.0.Limits
The lists are for teaching and practice. They are not an assessment of any child and a placement is not a rule: programs and standards differ. The lists in other languages are written for each language's reading curriculum and are not translations of the English lists.
Versions
The files change when lists change or a placement is revised. The npm package version follows, so a pinned dependency never shifts under you. Current package version: 0.1.0. Data last updated 2026-10-17.