Motion communicates meaning, not decoration. Every animation must earn its place — communicating state, revealing hierarchy, or rewarding a genuine financial win.
Section 01
Motion Vocabulary
Four duration tiers and three easing functions cover every UI transition. Match the tier to the moment's emotional weight.
Principle: Motion communicates meaning, not decoration. If removing an animation makes the UI harder to understand, the animation belongs. If not, cut it.
Section 02
Micro-interactions
Immediate feedback for user actions. Always 150ms or under — sub-perceptual but felt.
Press State
scale 0.95 · 150ms ease-out
Tap & Hold Me
Applied to all tappable elements: buttons, brand tiles, list rows. Never skip on native touch.
Count: 20 pieces Shapes: 7×7px square + 5×9px tall Colors: Gold · Teal · White · Blue Origin: Screen center ±10px Radius: 25–130px radial Duration: 1500ms Physics: rotation + gravity + fade
triggered at 2400ms opacity: 1→0
Teal Glow (Returns)
Applied to "+₹69 grew" counter value.
text-shadow: 0 0 20px rgba(0,212,170,0.40); Pulses in sync with counter: 0 0 8px rgba(0,212,170,0.30) → 0 0 24px rgba(0,212,170,0.60) 800ms linear
Card Entrance
Bottom sheet celebration card enters from below with spring overshoot.
from: translateY(60px) rotate(-2deg) opacity: 0
to: translateY(0) rotate(0) opacity: 1Duration: 600ms spring cubic-bezier(0.34,1.56,0.64,1)
Section 07
Delight Dos & Don'ts
Principles for deploying delight thoughtfully. Motion that fires too often loses meaning.
✓
Reserve celebration for genuine wins
Confetti and scale-bounce are reserved for moments where the user's money genuinely worked — cashback credited, returns earned, goal reached. Deploy once, at the peak. The emotional impact comes from scarcity.
✓
One emotional peak per screen
Design each celebration screen with a single scale-bounce moment — the "Total Saved" reveal. If two elements compete for peak attention, neither wins. Build up to one headline, then release with the spring animation.
✓
Let counters run 1–2 seconds
A counter that runs for 1–2s feels earned and satisfying. Duration should scale with the magnitude of the value — ₹69 runs shorter than ₹24,500. Never flash to the final value instantly; that feels like a glitch.
✗
Don't animate on every screen
Routine screens (transaction list, settings, profile) should have clean, fast transitions only. Entrance animations on every screen train users to ignore them — saving the spring and confetti for genuine moments preserves their impact.
✗
Don't use celebration for errors or empty states
Confetti and gold glow are emotionally coded as "win" moments. Using them for neutral onboarding or error recovery dilutes their meaning and can feel patronising. Error states use coral tones with simple fade-in, no spring.
✗
Don't animate negative financial values
Counter animations, teal glows, and scale bounces are reserved for positive amounts — returns earned, cashback, savings. Fees, charges, and payment amounts should display instantly in neutral colors. Never make the user feel excited about money leaving.
The Golden Rule of Delight
Every delight animation should answer: "Did the user earn this?" If yes, the motion amplifies a genuine moment and builds trust. If no, it's noise that teaches users to skip ahead. Motion in a fintech product is not about looking exciting — it's about making users feel that their money is working for them.