Skip to content
Say Yay

No scores

Nothing in here keeps score.

Your child cannot fail at this.

  • A balloon carrying a chick up past the clouds after its word was said, with the next word waiting below.
  • A creature coming up over the hill towards the thing it asked for, with the words it is waiting for above.
  • A grid of pictures with the next one to name ringed, and that word printed large underneath.
  • A shopkeeper, three things on the counter to ask for by name, and the one a child asked for politely marked as handed over.

What is missing

Six things other apps have and this one does not.

  • No score

    There is no number anywhere in this app. Nothing to be good at, nothing to be bad at.

  • No stars, points or trophies

    A four-year-old cannot tell a star they earned from a star in the sky. None of those words exist in the game.

  • No streak to break

    Miss a week and nothing resets. There is no number to lose.

  • Nothing corrects them

    No character can tell your child they said it wrong. Not a house rule — the game has no way to do it.

  • Their voice is never recorded

    There is nowhere in this product for a recording to be sent, so none is.

  • Their photo stays on the device

    Some games put their face on a cartoon body. It is cropped on the phone and never leaves it.

Try it

Say it wrong on purpose.

This is the real list of what counts, out of the game.

Where should we go today? The red planet, the ring world, or the rock moon?

Answer the way your child would. Say it wrong on purpose.

Words nobody says

No character in the game may use any of these.

“You did it!” celebrates the thing they did. “You got it right!” is a verdict, and a verdict is a score.
correctincorrectrightwrongperfectwell donegood jobgreat jobnice jobtry againscorepointspointstarstarsbadgemedaltrophypercentstreaklevel upbetterimprovedclearlyproperly

Every one of them

Every game, by name.

Apps that advertise a thousand activities cannot list them. Here is the whole list.
GameA roundPractises
Balloon Words40ssaying single words clearly
Big Beat60sleaning on the word that matters, which part of a word is loud
Build My World90sasking for what they want, colours, sizes and amounts, naming things, words for where things are
Count It60s
Creature Call75sasking for what they want, loud and quiet on purpose, naming things
First, Then75sfollowing two steps in a row, joining two ideas, what happened first, then next
Loud and Quiet45sloud and quiet on purpose, the tune of a sentence
Magic Garden90scolours, sizes and amounts, number words, one and more than one, two things in one sentence
Make an Animal50snaming things, saying single words clearly
Monster Mouth60shearing the first sound in a word, where the tongue and lips go
Rocket Boost45ssaying single words clearly
Shape Town75snaming things, saying single words clearly
Sound Smash60ssaying single words clearly
Sounds Like60shearing rhymes
Starts With30scopying a word back, making sound on purpose, taking turns
Syllable Stomp45shearing the beats in a word, keeping the quiet syllable in
Tap and Say60snaming things, saying single words clearly
The Shop90sasking for what they want, hello, goodbye and please, trying again when not understood, using language with people
Trace It60s
Two Baskets60shearing the first sound in a word, saying single words clearly
Uh Oh!90ssaying why, talking about what already happened, telling what happened
Who Is It?90sanswering who, what and where, describing something, giving and following directions, remembering and retelling
If you would rather check than take our word for it

Say Yay has no reviews, no ratings, no press and no awards — any of those would take an afternoon to fabricate. What it has instead is a repository, and these are the places the claims above live in it.

  • No score anywhere
    Nothing in packages/ or services/ computes one
  • Stars, points, badges, trophies, streaks
    packages/content/audio/sounds.json → forbiddenInLines
  • No column for a photo
    services/accounts — no column, no url, no hash, no bucket
  • Nowhere to put a recording
    No service in the repository accepts an audio buffer
  • No way to correct a child
    packages/contracts/world-actions.allowlist.json → forbidden
  • Days played is a list of dates, not a counter
    The rewards blob in services/accounts

The function that moves the world is handed what a child meant and has no parameter a pronunciation result could arrive through:

def decide_transition(semantic, settings, action_is_available)

Parsed out of services/world-planner/app/orthogonal.py at build time, so adding a parameter fails the build. 9 tests assert it. A generated line of dialogue may never request set_score, show_correction, display_target_word — the engine refuses those before it sees them.

Ready?

Three minutes to a plan.