04Case study / Brand
Spin Pass
A 26-second brand spot for Spin Pass, timed to the beat, that tells its core story without any product footage.
Introduction
Twenty-six seconds to tell the whole story: every game feeds one reward track, and the player can see it.
Spin Pass is a white-label reward system for gaming operators. Daily challenges, visible milestones, and reward tracks that work across your casino, sportsbook, sweepstakes, or social gaming portfolio. The loyalty layer for modern gaming.
I led Spin Pass’s product direction and directed its brand spot: 26 seconds of motion, 3D and an original score, with a cut for G2E Las Vegas 2026. It’s built from the website’s own colours, logo and words.
My Role
I set the product direction and directed the spot. What went into it:
- Product directionThe product story: any game provider feeds one reward track, and the player follows it in a widget.
- Creative directionThe story, the rules, and my notes across six rounds of review.
- Beat sheetEvery shot planned to the bar at 120 BPM, so each cut sits on a bar line.
- Motion designThe type, the connected-portfolio scene and the claim, every key move timed to the beat.
- 3DFive shots built and rendered in Blender: the mark, the rail, the phones, the gift and the lock-up.
- Score + soundAn original score and sound design, every key effect on its hit.
- Edit + deliveryCut on the bar lines, mastered for social, and delivered in two cuts.
The Brief
The story is the product’s own: every event from gameplay, from any game provider, feeds one track on the operator’s side, and the player follows it in a widget.
It had to land fast, in a feed. These are the rules it kept:
- Short
- Twenty seconds was the goal. Every second it grew past that had to earn its place.
- No product footage
- No console, admin or demo footage. The operator apps are generic skeletons.
- No real brands
- The game providers are Provider A to D, and no client or manufacturer is named.
- One voice
- Nearly every line is the website’s own, so the spot and the site say the same thing.
The Beat Sheet
The spot is planned in bars, not seconds. At 120 BPM a bar is 2 seconds, so the spot is 13 bars: one idea per shot, every cut on a bar line, and every key hit on a beat.
01The ring0 to 4 s
- 0 sSparks draw the ring
- 2 sThe title types in
02The mark4 to 6 s
- 4 sThe mark slams in on the drop
03One track6 to 10 s
- 7 sProvider A
- 7.5 sProvider B
- 8 sProvider C
- 8.5 sProvider D
- 9 sEverything connects
04The milestone10 to 12 s
- 11.5 sTier 3 bursts
05White-label12 to 18 s
- 12 sSportsbook
- 13 sSweeps
- 14 sCasino
- 15.5 sThree phones
06The claim18 to 22 s
- 19 sReady
- 20 sThe tap
- 20.5 sThe gift bursts
- 21 sClaimed
07The lock-up22 to 26 s
- 22 sThe mark locks on the second drop
- 22.5 sThe wordmark
- 23.5 sThe tagline lands
- 24 sspinpass.io, on the sonic logo
Drawn from the edit’s own timings. The score drops at 4 seconds as the mark slams in, drops again at 22 as it locks, and lands its sonic logo on the website at 24.
Shot by Shot
- 01The ringSparks draw the ring as the title types itself in: Loyalty, rebuilt like a game.

- 02The markThe 3D mark slams in on the drop, the wordmark beneath it.

- 03One trackFour game providers send their events, one per beat, into one operator-side track, and the player’s widget mirrors it.

- 04The milestoneThe camera flies along the progression rail as Tier 3 bursts.

- 05White-labelOne phone repaints from sportsbook to sweeps to casino, then three hold side by side.

- 06The claimThe card fills, a finger taps Claim, a 3D gift bursts, and Tier 4 comes into play.

- 07The lock-upThe mark locks, the tagline follows, and the website lands on the sonic logo.

The Look
Almost everything on screen belongs to Spin Pass: the website’s colours, its logo and wordmark, its reward card. The spot hands off to the site without a seam.
Palette
- #0C0512
- #9959FE
- #FA93FA
- #DA49FF
- #EAB308
A night-violet ground, the logo’s pink-to-violet gradient, magenta for energy, and gold for the claim button.
Type
- Poppins
- Inter
- JetBrains Mono
Poppins, from the website, sets every line. Inter runs the phones’ clocks, and JetBrains Mono counts up the track’s and the widget’s percentages.
Three operators, one card
- #14B8A6
- #C976FC
- #F97F3B
The same reward card, dressed three ways: Matchday Climb for a teal sportsbook, Summer Spins 2026 for a violet casino, and Ember Nights for an orange sweeps app.
3D Components
Five shots are 3D. Each one is a script that builds its scene in Blender and renders it in EEVEE. Four render on a transparent background, lit by one studio HDRI and coloured area lights, so their frames drop straight into the edit. The rail renders in its own dark world. Rendered alone, these are the spot’s parts.


The mark

The progression rail

The reward gift

The gift, opening
Score + Sound
The score is original, made in Surge XT at 120 BPM in C major: an intro bar, a build, then the drop at 4 seconds, right as the mark slams in. 808 and 909 drums carry it, and a rising C, E, G, C sonic logo closes it on the website.
Most of the sound design comes from the Sonniss game audio bundle, with 8-bit blips as the title types in and in-key chimes for Tier 3 and the claim. Most effects are lined up by their peaks, not their starts, so each one’s loudest moment lands on the frame of its hit. Each provider gets three sounds in under half a second: a pop as it appears, a click as its event lands in the track, and a glassy snap as the player’s widget syncs.
It’s mastered to −14 LUFS, the loudness norm for YouTube, LinkedIn and Instagram.

Review + Iteration
The first plan ran about 74 seconds. I cut it to 20, then let it grow back to 26 over 6 rounds of review in one day, and only where the story needed the time.
Length, first plan to final
Before74 sAfter26 s
The claim on screen
Before2 sAfter4 s
“White-label by design.” on screen
Before<1 sAfter5.5 s
Rail hits, off the beat by
Before0.3 sAfter0 s

20-second cut: The 20-second cut at 5.4 seconds: the 3D SP mark alone, large in the frame. Final cut: The final cut at 5.4 seconds: the camera pulled back, the SP mark above the Spin Pass wordmark.

24-second cut: five activities fill one bar

Final cut: four providers feed one track, and the player’s widget mirrors it

20-second cut: The 20-second cut's end card: the Spin Pass lock-up and tagline, a Book a Demo button and spinpass.io. Final cut: The final cut's end card: the Spin Pass lock-up and tagline, and spinpass.io alone in pink.
- Round 1Camera shake only on the two drops and the gift, “White-label by design.” made a headline you can read, and the phone screens held inside their frames.
- Round 2A bar more for the claim, with Ready held a full second before the tap, and the corner counter and borders gone.
- Round 3The wordmark under the mark, every hit on the rail on its beat, the jolt gone from the casino phone, and the three phones held a bar longer.
- Round 4The end card finishes on the website alone.
- Round 5A new scene for the core story: gameplay from the whole portfolio feeding one track the player can see.
- Round 6Four game providers in place of game categories, one per beat.
Delivery
- 26 s
- 13 bars at 120 BPM
- 60 fps
- 1920 by 1080, H.264
- −14
- LUFS, the loudness norm for social
- 2 cuts
- The main spot, and one for G2E 2026

How it was made
- Built as code: every shot, the score and the edit are Python scripts, so any note re-renders exactly.
- 3D in Blender 5.2 and EEVEE, lit by the Poly Haven HDRI Ferndale Studio 02.
- Score in Surge XT with 808 and 909 one-shots; sound effects from the Sonniss bundle.
- Type in Poppins, Inter and JetBrains Mono; icons from Lucide and Phosphor.
Learnings
- 01
Anything that moves toward a hit has to arrive on it. Easing hid a miss of 0.3 seconds on the rail, so I check motion against the sound, not just the frame.
- 02
Every key line needs 2 full seconds on screen. Under a second, “White-label by design.” was gone before anyone could read it.
- 03
Camera shake is seasoning. On every kick it read as a pulse. On the two drops and the gift, it hits.
- 04
Short wins. Cutting to 20 seconds forced one idea per shot, and every second it grew back had to earn its place.
- 05
Build it so notes are cheap. With the edit as code, a whole new scene went in without re-rendering a single 3D shot.
- 06
Check 3D devices at full size, edge to edge, before calling them done. That’s where a screen spills past its frame.

