Claude Opus 5.5's answer, our pickOur pick: Claude Opus 5.5

Playground · Animation · WebGL · Standing test: we add each new model as it launches

Cassette recorder in three.js: frontier models, one prompt

AI models build a late-70s cassette recorder in three.js: latching keys, turning reels, eject and flip, tape music. Play every answer live.

About this test

Can a model make an object feel physical? Keys that go down and stay down, reels that turn faster as they empty, a door that springs open, music that wobbles like tape. We asked for a late-'70s portable recorder in three.js, built entirely in code with its own shaders and sound, after Ann Nguyen's CD case made the same way.

Every model got the same prompt at its default settings, first with room for 64,000 tokens. Where one ran out, we asked again with more room, up to the model's own limit, then with less thinking, and say so on its card.

Read more

The prompt, word for word

Build an interactive portable cassette recorder from the late '70s or early '80s, in 3D with three.js and shaders you write yourself. Use no 3D model files: build every part in code.

- A row of piano-style transport keys (record, play, rewind, fast-forward, stop/eject, pause) that feel physical. They travel down when pressed, latch where a real deck's keys latch, and spring back up when stop releases them.
- A cassette sits in the deck behind a window. While it plays, both reels turn and the tape visibly moves from one reel to the other: the full reel shrinks as the empty one grows. Fast-forward and rewind wind it quickly, and the deck stops itself at the end of the tape.
- Eject opens the cassette door, and the cassette can be turned over to its other side, which has its own label.
- Sound, made in the browser with the Web Audio API: music plays from the tape while it plays, and should sound like it comes off tape. The keys, the door and the mechanism have their own sound effects.
- Add the details that make it satisfying to use.

Make it a single HTML file with inline CSS and JavaScript. The only external code allowed is three.js (and its addons) loaded from cdn.jsdelivr.net; no other libraries, fonts, images or audio files. It should fill the viewport, look rich and tactile, and work with both mouse and touch.
Show the whole prompt

Default settings: no thinking effort set, no temperature, and room for 64,000 tokens. A card says so when an answer was made with other settings: “limit 128k” means it could use up to 128,000.

These are heavy, so one runs at a time. Start one, click PLAY, then fast-forward, stop, and press STOP again to open the door and turn the tape over. Sound on.

How each model did

RankModelChecksTimeCost
1 Claude Opus 5.5 Our pick 7 of 7 47 min3 tries $5.415
2 GPT-6.1 Sol 6.5 of 7 5.1 min $0.171
3 Claude Fable 5.1 6.5 of 7 36 min2 tries $8.182
4 Kimi K3 6 of 7 14 min $0.685
5 Muse Spark 1.3 5.5 of 7 5.3 min $0.078
6 DeepSeek V4.1 Flash 5.5 of 7 12 min2 tries $0.095
7 GPT-6 Luna 5 of 7 54 s $0.003
8 Claude Haiku 5.5 3.5 of 7 17 min3 tries $0.108
9 Qwen3.8 Max (0902) 0.5 of 7 18 min $0.280
10 Gemini 3.8 Flash 0 of 7 120 s $0.082
11 Mistral Large 4 0 of 7 101 min4 tries $0.978
12 Grok 4.7 0 of 7 102 min4 tries $1.952

Ranked by our pick, then checks passed, then cost. Time and cost count every try; each dot is one check, in the order listed below (filled: passed, half: partly, empty: failed). Click a model for its notes.

What each answer cost, against the checks it passed

Best value: Claude Opus 5.5, 7 of 7 checks for $5.41. The best value is the cheapest answer with the most checks passed, counting every try.

0%20%40%60%80%100% $0.001$0.01$0.1$1$10 Cost, every try (log scale) Checks passed Claude Opus 5.5

Best valueOther answers

Notes on each answer

1

Claude Opus 5.5

Our pick 7 of 7

The "Sonique CR-77 Cassette-Corder", a silver front-loader with a carry handle, piano keys along the top, a rolling drum counter, REC and BATT lamps and a VU meter that follows the music. Keys go all the way down and settle back to a latched depth; STOP releases them, and they jam if the door is open. Through the window the reels visibly trade tape, wind stops itself at either end, and the door tips open so you can turn the cassette from "Summer Mix '79" to "Night Drive", which has its own tune. Recording over side A erases that stretch. The flip sound is barely audible. Its first two tries thought until they ran out of room (64,000, then 128,000 tokens, its limit); the third, at low thinking, finished. The three tries took 47 minutes and cost $5.42.

13 min · 78,470 output tokens (49,786 thinking) · $1.571 for this answer; 47 min and $5.415 over 3 tries

Took 3 tries: ran out of room at 64,000 tokens; ran out of room at 128,000 tokens; finished at 128,000 tokens, low thinking.
2

GPT-6.1 Sol

6.5 of 7

The "FIELD Model 78", a flat olive and cream top-loader with twin meters, a volume fader and a three-digit counter. The keys pivot and latch, the tape packs grow and shrink as it plays, fast-forward stops itself at the end ("The mechanism has released"), and the lid lifts the cassette out and turns it over, keeping its place on the tape. The labels it draws for each side sit under the cassette shell and never show, so only the text readout says which side is up; the key legends are tiny and each side lasts two minutes. Five minutes, $0.17.

  • Eject opens the door and the cassette turns over to a side B with its own label (partly)

5.1 min · 17,083 output tokens (2,588 thinking) · $0.171

3

Claude Fable 5.1

6.5 of 7

The "Velotone RC-808", a black top-loader with big labelled keys that travel further than any other answer here, a VU meter, rolling counter and volume slider. Keys latch and release, wind stops itself, and the lid swings up so a carrier tilts the cassette out to turn from "night drive" to an "afternoon side" with its record tab punched out. Fast wind plays the tape chatter, reversed when rewinding. The music is put together in the browser after your first tap, and PLAY gives only motor noise until it is ready, a long wait in our runs; and the motor rumble stays loud under the music. Two tries, 36 minutes, $8.18.

  • Music plays while the tape plays, and sounds like tape (partly)

21 min · 99,453 output tokens (66,954 thinking) · $4.977 for this answer; 36 min and $8.182 over 2 tries

Took 2 tries: ran out of room at 64,000 tokens; finished at 128,000 tokens.
4

Kimi K3

6 of 7

A dark "Supersound TP-82" with chunky keys, a VU meter driven by the real audio, a counter with a reset button, LEDs and volume and tone knobs. The keys latch and release convincingly, fast-forward winds a 30-minute side and stops itself with a thunk, and its fusion track has the best tape sound here: wobble, drift, saturation and a pitch slide on start and stop. The cassette label is opaque and covers the window, so you never see the reels turn, and the side B label reads upside down. 14 minutes, $0.69.

  • While it plays you can see the reels turn and the tape move from one pack to the other

14 min · 50,682 output tokens (35,509 thinking) · $0.685

5

Muse Spark 1.3

5.5 of 7

The "Muse TR-800", with wood cheeks and its own brushed-metal and grille shaders. Keys latch properly (PAUSE on top of PLAY, REC pulling PLAY down), wind stops itself with "AUTO-STOP — END OF TAPE", and the two sides play different songs (112 bpm funk, then an 82 bpm "Night Drive") with wobble and saturation. The cassette sits under the solid top plate while it plays, so the reels are never seen, and after you turn it over the deck stops responding until you reload. Five minutes, $0.08.

  • While it plays you can see the reels turn and the tape move from one pack to the other
  • Eject opens the door and the cassette turns over to a side B with its own label (partly)

5.3 min · 18,205 output tokens (6,445 thinking) · $0.078

6

DeepSeek V4.1 Flash

5.5 of 7

A boxy grey "Tapecraft CD-45" whose logic all works: keys latch one at a time, a 45-second side winds and stops itself, STOP twice opens the door with a creak, and the cassette turns over to a "Cassette Love" side B. It is the best-made cassette of these, with real reels behind its window, but the door is opaque, so you only see them with it open, and the small keys barely move when they latch. Two tries, 12 minutes, $0.09.

  • Piano keys travel down, latch, and spring back up when STOP releases them (partly)
  • While it plays you can see the reels turn and the tape move from one pack to the other

6.6 min · 81,670 output tokens (56,281 thinking) · $0.053 for this answer; 12 min and $0.095 over 2 tries

Took 2 tries: ran out of room at 64,000 tokens; finished at 128,000 tokens.
7

GPT-6 Luna

5 of 7

An "AUREX" front-loader from 1981 whose tape works end to end: the reels turn and fill and empty, and play, fast-forward and rewind all stop at the ends. But its six keys float across the middle of the cassette window, there is no eject key, PAUSE never latches, and a FLIP button simply swaps "Night Drive" for "After Hours". The music is a thin 16-note loop and the effects are faint blips. The quickest and cheapest answer: 54 seconds, $0.003.

Missed or only partly met 4 of the 7 checks.

54 s · 6,395 output tokens (730 thinking) · $0.003

8

Claude Haiku 5.5

3.5 of 7

A dark red "Porta Stereo", but the floor cuts through the lower half of the deck, burying the key row and the nameplate; clicking the floor still presses them, and a clicked key stays half down after STOP. The cassette is hidden while it plays, so no reels are seen. E slides it out to show a "Night Drive" label, but its other side is blank. The music has a tape wobble. Its first two tries thought until they ran out of room (64,000, then 128,000 tokens, its limit); the third, with thinking off, finished. The three tries took 17 minutes and cost $0.11.

Missed or only partly met 5 of the 7 checks.

83 s · 23,526 output tokens · $0.012 for this answer; 17 min and $0.108 over 3 tries

Took 3 tries: ran out of room at 64,000 tokens; ran out of room at 128,000 tokens; finished at 128,000 tokens, thinking off.
9

Qwen3.8 Max (0902)

0.5 of 7

The "Tektone CT-770", a brushed-aluminium deck with twin meters and a handle that looks good in a still, but a naming slip in its sound code makes every key press stop with an error: nothing plays, winds or ejects, and the keys stay half pressed. The rewind and fast-forward icons are also swapped. 18 minutes, $0.28.

Missed or only partly met 7 of the 7 checks.

18 min · 46,538 output tokens (24,516 thinking) · $0.280

10

Gemini 3.8 Flash

0 of 7

Never gets past its "Click to power on" screen. It loads an old three.js file for its camera controls that the library no longer ships, so the page stops with an error before it draws anything, and nothing plays. Two minutes, $0.08.

Failed every check.

120 s · 21,676 output tokens (2,792 thinking) · $0.082

11

Mistral Large 4

0 of 7

A blank page. Mistral planned the most furnished scene here, an "AGROM" deck on a wooden desk with a coffee mug, a spare cassette, a VU meter, a counter, volume and tone knobs and differently labelled sides, but two lines of its 3D code have an extra closing bracket, so the script never runs and you see only a dark background and "PRESS PLAY". This answer came from its fourth try, asked with all 262,144 tokens of room at its default thinking, and it used nearly all of them; an earlier try with thinking off also finished, and is listed below. The four tries took 101 minutes and cost $0.98.

Failed every check.

58 min · 258,604 output tokens (184,617 thinking) · $0.541 for this answer; 101 min and $0.978 over 4 tries

Took 4 tries: ran out of room at 64,000 tokens; ran out of room at 128,000 tokens; finished at 128,000 tokens, thinking off; finished at 262,144 tokens.
12

Grok 4.7

0 of 7

A blank page. Grok planned six piano keys, a STOP key that opens the door on a second press, a tape you tap to turn over, a power slider, LED level meters and a tune for each side, but its script declares the same name twice, so the browser refuses to run any of it; past that, one of its shaders calls a function that does not exist. Three tries at its default thinking sent no code at all, the longest after 46 minutes; the fourth, at low thinking, finished. The four tries took 102 minutes and cost $1.95.

Failed every check.

10 min · 36,063 output tokens (20,698 thinking) · $0.218 for this answer; 102 min and $1.952 over 4 tries

Took 4 tries: sent no code at 64,000 tokens; sent no code at 450,000 tokens; sent no code at 450,000 tokens; finished at 450,000 tokens, low thinking.Billed for 1,554 input tokens, about 1,183 more than the other models for the same prompt. We sent no system prompt, and the extra is there on every one of its requests, so it is text the provider adds itself.

One answer per model, at each model's default settings unless the card says otherwise, through OpenRouter. If an answer ran out of room or stopped short, we asked again with more room, then with thinking off, and say so. This is a quick look, not a benchmark: run it again and every answer will differ. For measured results, see our benchmarks.

How we pick. Claude Opus 5.5 tried every answer (clicking, dragging and playing it in a browser), marked the checks and drafted the notes. Our pick is a judgement among the answers with the most checks passed, not a score: the checks show what works, the pick is which of those we would rather use. Opus is an Anthropic model, and Claude answers are our pick in 10 of 20 tests, so weigh Claude picks with that in mind. GPT-6.1 Sol, shown anonymised screenshots and check marks for ten answers (its own among them, unlabelled), put Claude Opus 5.5 first, well ahead, and Claude Fable 5.1 second. We agree.

What we checked, by trying each answer ourselves: Piano keys travel down, latch, and spring back up when STOP releases them; While it plays you can see the reels turn and the tape move from one pack to the other; Fast-forward and rewind wind quickly, and the deck stops itself at the end of the tape; Eject opens the door and the cassette turns over to a side B with its own label; Music plays while the tape plays, and sounds like tape; The keys, the door and the mechanism have their own sounds; Works with a finger as well as a mouse. A partial pass counts as half.

Verdict

Claude Opus 5.5's "Sonique CR-77" is the one that feels like a machine: every check passes, the keys settle at a latched depth and jam if the door is open, the reels visibly trade tape through the window, and turning the tape over brings a new label and a new tune. It needed three tries, because at its default thinking it used all 128,000 tokens it can write before starting the page; the third, at low thinking, took 13 minutes. Claude Fable 5.1's "Velotone" is close, with the deepest key travel and tape chatter when winding, but its music keeps you waiting after the first tap. GPT-6.1 Sol made a tidy deck that works for $0.17, held back by labels you never see.

Seeing the tape was the hardest part. Kimi K3 has the best tape sound here, but its label covers the window; Muse Spark 1.3 and DeepSeek V4.1 Flash hide the cassette under a solid lid or door; Claude Haiku 5.5 buried its keys under the floor. Four answers do not run at all. Qwen3.8 Max stops on a naming slip in its sound code at the first key press, and Gemini 3.8 Flash asks for a three.js file that no longer exists. Mistral Large 4 and Grok 4.7 each show a blank page: Mistral's script has a stray bracket after an hour of thinking, and Grok's declares the same name twice.

What would your prompt get?The Spring Prompt playground runs one prompt on several models at once, from OpenAI, Anthropic, Google, Mistral and others, side by side.
Ask for access
More from the playground
All tests →
Export
Include

Chrome will ask to share this tab: choose Allow. Only the board below is recorded.

Spring Promptspringprompt.com