The Annual Awards.
Seven awards. One night. December 30, 2027.
What this is
A year-end ceremony that caps off the collection. Seven awards, no more, no less. Four content categories, two technical categories, and one creator rating award. The prize is a permanent badge and a permanent line in the archive. There is no cash, no trophy, and no red carpet. There is a page with seven names on it, and then everyone goes back to work.
The first ceremony
The first Annual Awards ceremony is December 30, 2027. It covers everything published in the collection from launch through December 2027. After that, the ceremony runs every year.
Key dates
The seven awards
Exactly seven. Not eight. Not ten. Seven.
Game of the Year
Best self-contained, playable game in vanilla JavaScript or WebAssembly. Judged on execution, originality, and how well it uses its kilobytes.
Open category · one workSong of the Year
Best WebAudio piece. Synths, generative compositions, ambient works, sequencers. Judged on composition, execution, and audio quality within the size budget.
Open category · one workUtility of the Year
Best single-file tool, calculator, converter, or experiment. A 64KB utility is a real tool. Judged on usefulness, polish, and restraint.
Open category · one workVideo of the Year
Best sequenced JavaScript choreography video, canvas film, or procedural moving picture. No actual video files. Judged on choreography, composition, and execution.
Open category · one workBest JavaScript
The single best JavaScript work of the year, regardless of category. A game, a song, a utility, a video — if it runs in vanilla JavaScript, it qualifies. Judged on code quality, readability, and craft.
Technical award · one workBest Python
The single best HTML + Python pair of the year. Judged on the quality of the Python function, the elegance of the pair, and how well the backend serves the work. Python alone is not eligible — the pair model is mandatory.
Technical award · one workHighest Tiny Rating
Awarded to the creator with the highest Tiny Rating (TR) for the year. TR is a cumulative stat that combines how well your works were ranked with what you actually submitted — score, file size, and volume. Full formula below.
Creator award · one creatorThe Tiny Rating (TR)
Baseball has ERA. We have TR. It's a rate stat: it measures how efficiently a creator turns kilobytes into rater points, with a small bonus for volume. Higher is better.
The formula
- Total Rater Points
- The sum of all rater scores across every published work by the creator. Each work is scored 0–100 by the Rater jury. A work must have at least 3 rater votes to count toward the total.
- Total KB
- The sum of the uncompressed file sizes of all published works, in kilobytes. A 45KB game and a 12KB song contribute 57KB total.
- Volume Bonus
- 5 × (number of published works − 1). Minimum 0. Rewards creators who ship more than one thing without letting volume dominate the stat.
Scores: 88 + 75 + 92 + 81 = 336 total rater points.
Sizes: 32KB + 18KB + 64KB + 40KB = 154KB total.
Volume Bonus: 5 × (4 − 1) = 15.
TR = (336 ÷ 154) × 100 + 15
TR = 218.18 + 15
TR = 233.18
TR resets every year. Only works published in the eligible year count toward that year's total. The award goes to the creator with the highest TR at the end of the year.
Self-rating is a starting state, not a stat. It decides whether a work begins in the browse feeds; once three raters vote, the average decides. TR only counts works that are in the feeds at year's end — so a work that was voted out stays ineligible, and a work that was voted back in counts fully.
A creator needs at least two published works to qualify for the Volume Bonus. A creator with one work can still win on raw efficiency if their score-to-size ratio beats everyone else.
Eligibility & judging
The four content categories and the two technical categories are open to any work published in the collection during the eligible year. The Tiny Rating award is open to any creator with at least one qualifying work.
- Eligible works are those in browse feeds at year's end. A work that is still in the graveyard on December 30 is not eligible for any of the seven awards — but a work that was in the graveyard earlier in the year and was voted back into the feeds by the jury is eligible. The graveyard is a state, not a sentence.
- One work, one award (per track). A work can win one content award (Game, Song, Utility, or Video) and one technical award (Best JavaScript or Best Python) in the same year. It cannot win two content awards or two technical awards.
- One creator, multiple awards. A creator can win multiple awards with different works.
- No self-voting. Raters cannot vote on their own works. This rule applies to everyone, including the site maintainer.
- No award without an eligible work. If no work qualifies in a given category, that award is not given that year. The archive records the gap.
Prizes
No cash. No trophy. No physical object of any kind. What you get is:
- A permanent badge on your work page and creator profile. It never comes off.
- A line in the archive. The winners are listed on this page and stay listed. In ten years, the 2027 winners will still be the 2027 winners.
- The knowledge that someone cared enough to make a badge. This is worth more than it sounds.
How to be considered
You don't submit to the annual awards directly. You submit to the collection — through the normal pipeline, or through one of the jams — and the awards are drawn from what's already published.
If you want to be in the running:
- Publish a work in the collection. See the Submission Criteria.
- Enter tinyjam '27 (spring) or python-classic '27 (fall) if your work fits the jam rules.
- Make something good. That's the whole strategy.
FAQ
Why exactly seven?
Because "don't overdo it" was the instruction, and seven is the number that covers the four content categories plus two technical categories plus the creator rating without adding anything that feels padded.
Can a work win both Game of the Year and Best JavaScript?
Yes. Those are separate tracks. A game is judged against other games for Game of the Year, and against all JavaScript works for Best JavaScript. The same work can win both.
Can a creator win multiple awards?
Yes. Awards are per-work, not per-person, except for the Tiny Rating award, which is per-creator. A creator with a game, a song, and a utility could theoretically win several awards.
Why December 30?
It's after python-classic wraps (December 11) and after its winners are announced (December 19), so the year's jams are settled. It's also the site maintainer's daughter's birthday. The date is fixed.
Is there a cash prize?
No. The site has no revenue. The prize is a badge and a permanent line in the archive. If a sponsor appears, that could change.
Can I sponsor an award?
Yes. Email mikemabes1986@gmail.com with the subject line "Annual Awards sponsorship."
What happens if no one qualifies for an award?
The award is not given that year. The archive records the gap. No award is given by default.
Will the ceremony be streamed?
No. The winners are announced on this page on December 30. There is no red carpet, no host, and no musical performances. There is a page with seven names on it, and then everyone goes back to work.
Past winners
None yet. The first ceremony is December 30, 2027. This section will be filled after the winners are announced — and it will stay filled.
See also
For the spring JavaScript competition, see tinyjam. For the fall Python competition, see python-classic. For the Rater jury that scores both, see the Rater Guidelines. For the general submission pipeline, see the Submission Criteria.
Join the Discord →