Cheat Codes
Not sure how long these will work, but Hank left some testing codes enabled:
- ⬆️⬆️⬇️⬇️⬆️⬆️ = >!Reset the current puzzle. Allows you to re-play the current daily and improve your score.!<
- Mobile users can tap the logo five times to do the same thing.
- S5 / S10 = >!Preview of a silver streak milestone (no data is saved)!<
- S25 / S50 / S100 = >!Preview of a gold streak milestone (no data is saved)!<
June 23 changes
I'm now copying these changes in a Git repository for easy tracking. Times below are in EDT time zone.
6:39 AM:
- index.html
- Definitions for today's >!DARK!< puzzle added
- Twitter emoji poll logic updated to rotate through single emojis from the poll every five minutes instead of displaying all of them
- puzzles.json
- Tile "SPARK" changed to "SPARKLE"
4:26 PM:
- index.html
- Promo banner ad for Focus Friend app replaces Humans podcast ad
- "SPARK" definition replaced with "SPARKLE" definition
- shared.css
- Promo banner styling updated for Focus Friend ad (allowing transparent image to overlap in mobile layout)
4:44PM:
- index.html
stats-beacon.jsscript file added- Logic added to detect if the ad banner was clicked when playing the daily puzzle
- New Ad bonus is added to the score if the ad was clicked
- Stats on official (daily or past) puzzle completion are logged to a Cloudflare analytics API:
- Anonymous identifier (randomly generated string stored in the browser)
- Puzzle date identifier string
- Bit marking if it was today's puzzle
- Bit marking if the puzzle was completed or failed
- Number of mistakes
- Score
- Time taken in milliseconds
- Current streak including today's puzzle
- The identifier of the daily puzzle is also recorded to the stats tracking API when you copy the completion image to clipboard
- scoring.html
- Ad bonus description added: "Tap the ad — give the day's ad a click"
- shared.js
- AD_BONUS = 5 added
- stats-beacon.js
- Initial version
- Transmits anonymous analytics to Cloudflare worker API:
https://fourbythree-stats.hankmt.workers.dev - On puzzle completion, includes a "dev" string stating if the device is "mobile" or "desktop"
- Includes a "src" string stating if the referrer string indicates the user came from "twitter", "youtube" (?!), "other", or "direct"
5:22 PM:
- index.html
- Definitions for tomorrow's puzzle added
- Hank should really move these over to puzzles.json so he can add them with the daily puzzles, even if he isn't going to support entering them for custom puzzles
- New achievement added: >!Early Bird!<
- Gold plaque design updated if you unlock the new achievement and gold plaque simultaneously
- Definitions for tomorrow's puzzle added
- scoring.html
- Description of new >!Early Bird!< achievement added:>! "Play the day's puzzle within the first hour of your local day"!<
- puzzles.json
- Tomorrow's puzzle modified to change two category names:
- >!"Highness of a Musical Note" became "Qualities of a Musical Note"!<
- >!"___-Black" became "Famously black things"!<
- history.html
- New achievement added: >!Early Bird: "Played today's puzzle in the first hour of your day."!<
Hopefully that's it for today, but he does have a strange habit of publishing small sets of changes at all hours of the day instead of a single release with all the day's changes. Most development teams would want to test all the changes together before publishing a new build, instead of testing changes in isolation and then publishing them in rapid succession.
June 22 Changes
I'm now copying these changes in a Git repository for easy tracking:
https://github.com/ConradPoohs/4x3-Updates
(times below are in EDT time zone)
5:20 AM Changes - 44b2c96
- index.html updated to fix the Twitter hub poll logic
3:53 PM Changes - 9793beb
- history.html
- Four new achievements added: >!Blue First, Grellow, Grue, God Damnit!!<
- index.html
- Logic for new achievements
- Word definitions added for today's game
- New +5 bonus added for >!Blue First!<
- Red >!God Damnit! !<Plaque added with description: >!"Nearly flawless. Which, honestly, makes it worse."!<
- puzzles.json
- Today's puzzle updated to replace "SWITCH" clue with "DOORBELL"
- scoring.html
- Scoring explanation updated to read: "Every win starts at 100 points. Lose points for mistakes, gain them for flair, then add your streak. A flawless run tops out at a clean 200 (plus your streak)."
- Added Blue First = +5 bonus, Grellow, and Grue defintions.
- Rulebreaker definition updated to read: "Wipes every point you earned — score and streak bonus included — and leaves you at -100. The shared word is meant to lead, not trail."
- shared.js
- added BLUE_BONUS = 5, and GRELLOW, and GRUE sequence defintions
3:58 PM Changes - 483432c
history.htmlAdded>!Rainbow!<achievement
- index.html
- Updated loading logic to only resume if the puzzle is identical to the one in progress
- Added >!Rainbow!< plaque and check
- scoring.html
AddedRainbow definition: "Solve yellow → green → blue → purple"- Added "God Damnit!" definition: "A perfect run (no mistakes + Hub First) ruined only by a green↔yellow or green↔blue swap"
- shared.js
- Added Rainbow sequence
4:13 PM Changes -
- build.html
- Minor fix to make sure the editor's colours line up with the puzzle
Easter Egg Emoji Poll Live on Twitter
Hank posted this poll on Twitter:
https://x.com/hankgreen/status/2068985712263733589
This API endpoint is used to share the live vote counts to Four x Three as weights:
https://www.hankgreen.com/api/hubpoll
{"active":true,"voting_status":"open","end":"2026-06-23T09:13:28.000Z","options":[{"emoji":"🏎️","weight":602},{"emoji":"🍄","weight":1420},{"emoji":"🤐","weight":326},{"emoji":"🔘","weight":409}]}
These weights and emoji are then used to determine which emoji will be used when you click the hub word after winning:
June 20 updates - New RULE BREAKER ending!
There are two new scoring outcomes:
- Hub Middle — place the shared word second every guess = +20 (same value as Hub First)
- RULE BREAKER — put the shared word LAST in every guess = -100
>Wipes every point you earned and leaves you at -100. The shared word is meant to lead, not trail.
The daily puzzles also offer word definitions when you hover or click words in the list of solved categories. The hub word's definition changes according to the category.
Custom puzzles can now define their own custom emoji to be included in the easter egg emoji burst that appears >!when you click the hub word of a solved puzzle!<.
The positioning of solved tile lines has also been adjusted to make them always match their category's colour (instead of starting at the top row, then middle column, finally diagonals).
New Easter Egg Has Appeared!
4 x 3 was updated at 4:21 this afternoon, with a brand new easter egg.
Hint: >!It's only accessible after you complete a puzzle!<
Spoiler:>!When you click the hub word after finishing a puzzle, a burst of 12 emojis (randomly selected from 🎉✨🌟🐟💫🥳💛💚💙💜) will shoot out from the middle of the hub word and then fade away!!<
Bonus easter egg:
The official daily puzzles>!include an extra emoji in the burst that is thematically tied to to the hub word!!<
For the past puzzles, these include: >!MOLE =🕵️, HEAVY = 🏋️, TIRE = 🛞, CUP = 🏆, FANTA = 🥤, SPRING = 🌸!<