Skip to content

Custom Word Lists

Build targeted word lists by combining phoneme patterns, psycholinguistic property filters, CV shape, and sound similarity.

Overview

Build word lists by combining: - Phoneme patterns (STARTS_WITH, ENDS_WITH, CONTAINS, CONTAINS_MEDIAL), each with include / exclude mode - Property filters (~150 psycholinguistic property columns tracked in the data layer; the Word Lists picker currently surfaces the curated clinical-workhorse subset, grouped by category: Phonological Complexity, Lexical, Semantic, Register & Usage, Affective) - CV shape (filter by syllable structure: CV, CVC, CCVC, ...) - Sound similarity (anchor on a target word with adjustable onset / nucleus / coda weights) - Picture cards (a "has picture card" rule restricts results to words with a shipped image) - Phoneme exclusions (exclude words containing specific phonemes) - AND logic (words must match ALL criteria)

Vocabulary size: ~48K canonical content words (content-word frequency mass + WordNet realness, plus a curated deny/allow list; the full ~125K CMU-phonology lexicon backs exact-word lookup)

Basic Usage

  1. Add a pattern: Pick Starts with / Ends with / Contains and Include / Exclude, type the phoneme(s) (or use the IPA keyboard icon), then click Add rule — each rule becomes a chip in the active constraints bar
  2. Narrow the scope (optional): Toggle Base forms only, Has image, and/or Specialized & dated vocab to restrict the vocabulary before filtering
  3. Add filters (optional): Pick a numeric property and set its range, or pick a category (e.g. Register) and select values, then click Add filter
  4. Build: Click Build Word List to run the query
  5. Export: Select rows and use Add to Editor to send them into the Materials Editor as a therapy pack, or download the full (or selected) results as CSV

Pattern Types

Pattern Matching Algorithm

Patterns use IPA transcriptions to match phoneme sequences:

STARTS_WITH /k/

Matches: cat /kæt/, king /kɪŋ/, crest /kɹɛst/
Does not match: back /bæk/, attack /ətæk/

ENDS_WITH /t/

Matches: cat /kæt/, fight /faɪt/, rest /ɹɛst/
Does not match: cats /kæts/ (ends with /s/)

CONTAINS /s/

Matches: sit /sɪt/, pass /pæs/, outside /aʊtsaɪd/
Matches any position: initial, medial, or final

CONTAINS_MEDIAL /s/

Matches: missile /mɪsəl/ (medial /s/)
Does not match: sit /sɪt/ (initial), pass /pæs/ (final)

Technical Details

Implementation: - Uses regular expression matching on IPA strings - Case-sensitive IPA matching (e.g., /i/ ≠ /ɪ/) - Matches exact phoneme boundaries (e.g., /s/ won't match /ʃ/) - Diphthongs treated as single units (e.g., /aɪ/ is one phoneme)

Performance: queries execute server-side against the D1 database via the PhonoLex Worker API

Limitations: - Cannot match phoneme features directly (use Lookup tool for feature-based search) - Cannot use wildcards or phonological classes (e.g., cannot search "any fricative")

Property Filters

Filterable vs. displayable. These are not the same thing. Filterable means the property can become a filter rule, reachable through one of three routes: the "Numeric property" picker, the "Category" picker, or (for the two properties neither picker takes) a dedicated control — Has Image lives on the scope bar's "Has image" toggle, and CV Shape has its own CV-shape rule builder. As of the current picker (PHON-222), exactly 12 properties are filterable in Word Lists: Syllables, Phonemes, WCM, CV Shape, Frequency, Age of Acquisition, Familiarity, Concreteness, Has Image, Register, Valence, Arousal. Everything else in the ~150-column data layer — including the whole Phonotactic Probability family below — is computed and stored, and some of it round-trips through the API or leaks into exports (see the CSV note further down), but it is not offered as a Word Lists filter rule, and most of it does not appear as a results-table column either. Don't assume a property table below implies a picker or scope-bar entry — check the property against the filterable list.

Complete Property Reference

Phonological Complexity (3 properties)

Property Range Source Description Coverage
Syllables 1-5 CMU Dictionary Number of syllables 100%
Phonemes 1-10+ CMU Dictionary Number of phonemes (IPA segments) 100%
WCM 0-15 Stoel-Gammon (2010) Word Complexity Measure (8 parameters) ~95%

Syllables: - Counted from syllabification algorithm - Example: "cat" = 1, "window" = 2, "computer" = 3

Phonemes: - Counted from IPA transcription - Diphthongs count as 1 phoneme (e.g., /aɪ/ in "time") - Example: "cat" /kæt/ = 3, "spray" /spreɪ/ = 4

WCM (Word Complexity Measure):

8 parameters from Stoel-Gammon (2010): 1. More than 2 syllables: +1 2. Non-initial stress: +1 3. Word-final consonant: +1 4. Consonant cluster: +1 per cluster 5. Velar (k, g, ŋ): +1 per occurrence 6. Liquid/rhotic (l, ɹ): +1 per occurrence 7. Fricative/affricate (f, v, θ, ð, s, z, ʃ, ʒ, h, tʃ, dʒ): +1 per occurrence 8. Voiced fricative/affricate: +1 additional

Examples: - "cat" /kæt/ = 2 (velar /k/, final consonant) - "spray" /spreɪ/ = 5 (cluster, fricative /s/, liquid /ɹ/) - "strength" /strɛŋkθ/ = 11 (very high complexity)

Phonotactic Probability (3 of 6 properties shown; NOT filterable in Word Lists)

None of the Phonotactic Probability properties are platform_visible — this whole category is absent from the "Numeric property" picker and from the Word Lists results table / Lookup profile. They are computed for the full ~125K-word lexicon and returned by the word-detail API (GET /api/words/:word), so they're reachable for API consumers and for research use, but there's currently no in-app way to filter by them or see them in Word Lists. (Below is the "avg" trio; three stress-marked siblings — str_phono_prob_avg, str_positional_prob_avg, str_neighborhood_density — also exist in the API response but aren't documented in depth here.)

Property Range Source Description Coverage
Biphone Probability 0-1 Method: Vitevitch & Luce (2004); computed from CMU dict Mean probability of phoneme sequences (higher = more typical) ~100%
Positional Probability 0-1 Method: Vitevitch & Luce (2004); computed from CMU dict Mean probability of phonemes at their position in the word ~100%
Neighborhood Density 0-50+ Method: Vitevitch & Luce (2004); computed from CMU dict Number of phonological neighbors (edit distance 1) ~100%

Biphone Probability: - Measures how typical the sound sequences are in English - Computed on the full phonology-bearing lexicon (125,756 words) for unbiased estimates - Higher values = more phonotactically "legal" or common sequences

Interpretation: - 0.00-0.02: Very low (unusual sequences like "strengths") - 0.02-0.05: Low-moderate (e.g., "splash", "squid") - 0.05-0.10: Moderate-high (e.g., "cat", "dog", "jump") - 0.10+: Very high (very typical sequences like "mama", "see")

Neighborhood Density: - Count of phonological neighbors at edit distance 1 (substitution, addition, or deletion of one phoneme) - Standard metric originating with Vitevitch & Luce (2004); PhonoLex computes the value directly from the CMU Pronouncing Dictionary - Higher values = the word sits in a denser phonological neighborhood

Positional Probability: - Measures individual phoneme frequencies in onset/nucleus/coda positions - Independent of sequence probability (biphone) - Higher values = phonemes that occur frequently in their positions

Clinical/Research use: - High phonotactic probability correlates with faster word learning - Children acquire high-probability patterns before low-probability patterns - Useful for controlling word learning difficulty in intervention or research

Lexical Properties (2 properties)

Property Range Source Description Coverage
Frequency 0-1000+ PhonoLex in-house (FineWeb-Edu, ~800M tokens) Occurrences per million tokens in an educational web corpus ~100% canonical
Age of Acquisition (AoA) 1-7 (age-banded: 1≈0-2y, 7≈13y+) PhonoLex in-house gpt-4.1-mini cloze Age band at which a word is typically learned (1=earliest, 7=latest). Validated Spearman 0.868 vs Glasgow Norms ~100% canonical

Frequency: - Derived in-house from the FineWeb-Edu educational web corpus (~800M tokens) - CYP-LEX child-corpus frequency bins (ages 7-9, 10-12, 13+) exist in the underlying lexicon data but are retired from the UI, not exposed as Word Lists filters - Log-transformed for UI (actual values are log10 per million)

Interpretation (raw scale, for reference — see filtering note below): - 0-5: Very rare words - 5-20: Uncommon words - 20-100: Common words - 100+: Very high frequency words

Filtering: the Frequency filter rule doesn't take a raw occurrences-per-million number. It's a percentile-rank bucket picker: Rare (bottom 10%), Uncommon (10th-40th), Medium (40th-70th), Common (70th-90th), Very common (top 10%). A word's percentile rank and its raw frequency value don't move together linearly, so "Common" isn't the same cut as "20-100" above — use the bucket labels, not the raw-scale numbers, when building a filter.

Age of Acquisition: - PhonoLex in-house LLM-cloze derivation (gpt-4.1-mini), validated against the Glasgow Norms (Spearman 0.868) - Scale: 1 (very early, <3 years) to 7 (late, adult years) - Correlates with processing speed and naming accuracy

Interpretation: - 1-2: Early childhood words (mommy, cat, eat) - 3-4: Elementary school words (book, teacher, happy) - 5-6: Middle/high school words (concept, analyze, determine) - 7: Late acquisition words (arcane, ephemeral, juxtapose)

Semantic Properties (2 properties)

Property Range Source Description Coverage
Familiarity 1-7 PhonoLex in-house (Glasgow-scale anchor) Word familiarity (1=unfamiliar, 7=very familiar) ~100% canonical
Concreteness 1-5 PhonoLex in-house (Brysbaert-scale anchor) Concrete vs. abstract (1=abstract, 5=concrete) ~100% canonical

Familiarity: - PhonoLex in-house derivation on a Glasgow-scale anchor - Distinct from frequency (can be familiar but rarely used) - Example: "elephant" = high familiarity, moderate frequency

Concreteness: - Measures how concrete (physical) vs. abstract a concept is - PhonoLex in-house derivation on a Brysbaert-scale anchor - High concreteness: table, water, run - Low concreteness: truth, love, think

Affective Properties (2 properties)

Property Range Source Description Coverage
Valence 1-9 PhonoLex in-house (Warriner-scale anchor) Emotional valence (1=very negative, 9=very positive) ~100% canonical
Arousal 1-9 PhonoLex in-house (Warriner-scale anchor) Emotional arousal (1=calm, 9=excited/intense) ~100% canonical

Valence: - Emotional positivity/negativity - Negative (1-3): war, death, hate, fear - Neutral (4-6): table, walk, window - Positive (7-9): love, happy, success, joy

Arousal: - Emotional intensity/activation - Low arousal (1-3): calm, sleep, relax, quiet - Medium arousal (4-6): walk, think, read - High arousal (7-9): excited, angry, panic, thrill

Filter Logic

AND Logic: All filters must be satisfied

Example query:

Pattern: STARTS_WITH /s/
Filter: Frequency = Common or higher (percentile bucket)
Filter: Syllables = 1
Filter: Concreteness ≥ 4.0

Result: Words that start with /s/ AND are high-frequency
 AND are monosyllabic AND are concrete

Matches: sun, sea, sock, snow
Does not match: sad (concreteness too low),
 seven (two syllables),
 see (frequency too low)

Missing Data: Words without a property are excluded when filtering by that property

Example:

Filter: Concreteness ≥ 4.0

Only words with concreteness data are considered.
Words without a concreteness value are excluded from results.

Phoneme Exclusions

Purpose: Exclude words containing specific phonemes

Use cases: - Avoiding error sounds (e.g., exclude /s/ when child substitutes s→θ) - Creating phoneme-specific lists (e.g., /k/ words without /g/) - Controlling phonological context

Example:

Pattern: STARTS_WITH /k/
Exclude: /g/
Exclude: /s/

Result: /k/ words without /g/ or /s/
Matches: cat, car, cut, candy
Does not match: cat+s (has /s/), big (has /g/)

Technical details: - Exclusions apply to entire IPA transcription - Multiple exclusions create additional AND conditions - Case-sensitive (e.g., excluding /i/ won't exclude /ɪ/)

Export Formats

CSV Export

Click Export above the results table (or select specific rows first — Export then applies to just the selection) and choose Download CSV. The exported columns are Word, IPA, plus whatever's currently checked in the Columns picker. Toggling a column on/off in the picker only offers the 12 filterable properties (see the note above) — Word Lists' Columns picker does not let you add or remove Phonotactic Probability, morphological, or other non-platform properties.

Format (default columns):

Word,IPA,Syllable Count,Word Complexity Measure,phono_prob_avg,Word Frequency,Age of Acquisition,Familiarity,Concreteness,Valence,Arousal
cat,kæt,1,2,0.062,182.5,2.1,6.9,4.93,7.2,3.8
dog,dɔg,1,1,0.054,245.3,1.8,7.0,5.0,7.5,4.2

phono_prob_avg (Biphone Probability) ships in every CSV export by default, with its raw column id rather than a friendly label — it's baked into the table's default column set even though it isn't filterable, isn't a toggle option in the Columns picker, and isn't rendered as an on-screen column. No other Phonotactic Probability property (Positional Probability, Neighborhood Density, or the stress-marked variants) appears in the export.

Details: - Header row with property names (or raw column ids for the phono_prob_avg exception above) - One word per row - Empty cells for missing properties - IPA in standard Unicode characters - Numbers use decimal notation

File size: ~1 KB per word

Copy Words

There's no separate "Copy" button in Word Lists — the plain single-click Copy button that appears in some other PhonoLex tools is a display mode Word Lists doesn't use. To copy words instead of downloading a CSV, click Export and choose:

  • Copy Words (Plain Text) — one word per line
  • Copy Numbered List1. word, 2. word, ...
cat
dog
house

Both options copy your current row selection if you've selected any rows (via the checkboxes), or the full visible results if you haven't selected anything.

Use case: Quick copying for clinical materials

Advanced Query Examples

See Practical Examples for detailed walkthroughs, including:

  • Example 1: Simple CVC words for early intervention
  • Example 2: Initial /s/ words with semantic scaffolding
  • Example 3: Late-developing sounds in simple contexts
  • Example 4: Negative valence words for emotional language
  • Example 5: Excluding problematic phonemes

Performance Characteristics

Queries run server-side: the browser sends the composed rules to the PhonoLex Worker API, which compiles them into a single SQL query against the D1 database. Response time depends mainly on how many rules are active and how large the result set is; typical queries return in well under a second.

Data Coverage & Limitations

Coverage by Property

Category Properties Filterable in Word Lists? Coverage
Phonological Syllables, Phonemes, WCM Yes ~100%
Phonotactic Biphone Prob, Positional Prob, Neighborhood Density No — data-layer/API only ~100%
Lexical Frequency, AoA Yes ~100% canonical
Semantic Familiarity, Concreteness Yes ~100% canonical
Affective Valence, Arousal Yes ~100% canonical

The in-house norm set (AoA, concreteness, familiarity, valence, arousal, iconicity, body-object interaction, socialness, semantic diversity) covers essentially the whole canonical vocabulary; phonological and phonotactic properties cover the full lexicon.

Vocabulary Limitations

Included: - General American English dialect - The canonical content vocabulary (words with established psycholinguistic norms)

Pronunciation variants: - STARTS_WITH and ENDS_WITH match against the primary pronunciation only - CONTAINS (and CONTAINS_MEDIAL) is variant-aware — it also matches pronunciation variants (CMU entries with (1), (2), etc.)

Excluded by default (canonical filter): - Proper nouns and name-like entries - Function words (pronouns, determiners, auxiliaries) - Abbreviations, foreign-word fragments, and other non-content entries

Total vocabulary: ~125K CMU-phonology entries (~48K canonical content words carry the full norm set)

Technical Limitations

Cannot filter by: - Phoneme features directly (e.g., "all fricatives") - use pattern matching or Lookup tool - Orthographic properties (spelling patterns) - Grammatical category (noun, verb, etc.)

Morphological complexity is NOT currently filterable in Word Lists: Morpheme Count, Prefix Count, and Suffix Count are computed in-house and round-trip through the word-detail API, but are not yet exposed in the Word Lists property picker.

Pattern matching: - Exact phoneme matching only (no fuzzy matching) - Cannot match phonological classes (e.g., "any stop") - Cannot use regular expressions directly

Tips & Best Practices

Getting Started

  • Start simple: Begin with one pattern, then add filters incrementally
  • Check the count: there's no live preview before you build — the match count (and a "showing first N" note if the result set is capped) appears in the results header only after you click Build Word List; adjust filters and rebuild to iterate
  • Iterate: Adjust filters to get desired word count (aim for 20-50 words for clinical use)

Optimization

  • Use frequency filters: Ensures functional, commonly-used words
  • Combine complexity measures: Use WCM + syllable/phoneme counts for precise developmental targeting
  • Consider missing data: Filtering by a norm excludes words without a value for it

Clinical Applications

  • Early intervention: Low WCM + high frequency + high concreteness
  • Phoneme-specific practice: Pattern matching + exclusions + frequency
  • Semantic therapy: High concreteness + valence/arousal filters
  • Literacy support: Monosyllabic + high frequency + moderate AoA

Research Applications

  • Stimulus control: Match WCM, frequency, AoA across conditions
  • Semantic variables: Control concreteness and familiarity
  • Affective content: Select words by valence and arousal
  • Phonological complexity: Systematic manipulation of WCM, syllable/phoneme counts

References

Phonological Complexity: - Stoel-Gammon, C. (2010). The Word Complexity Measure: Description and application to developmental phonology and disorders. Clinical Linguistics & Phonetics, 24(4-5), 271-282.

Phonotactic Probability: - Vitevitch, M. S., & Luce, P. A. (2004). A Web-based interface to calculate phonotactic probability for words and nonwords in English. Behavior Research Methods, Instruments, & Computers, 36(3), 481-487. (Method origin; PhonoLex computes the values directly from the CMU Pronouncing Dictionary.)

Psycholinguistic Norms (scale anchors for the in-house derivations): - Brysbaert, M., et al. (2014). Concreteness ratings for 40 thousand English words. Behavior Research Methods, 46, 904-911. - Scott, G. G., et al. (2019). The Glasgow Norms: Ratings of 5,500 words. Behavior Research Methods, 51, 1258-1270. - Warriner, A. B., et al. (2013). Norms of valence, arousal, and dominance. Behavior Research Methods, 45, 1191-1207.

See Also