Personalize the motion, never the brand color
Adaptive sites love to repaint themselves per visitor. We tune the hero's energy instead — and the magenta never moves. Why brand integrity outranks the demo-friendly trick.
The flashy version of personalization recolors everything. Startup visitor? Go blue. Enterprise? Cool violet. It demos beautifully and quietly destroys the one asset a brand spends years building: a color people recognize without reading the logo.
We personalize, but we drew the line at hue. Our homepage hero is a Three.js particle field, and when a visitor's audience segment is resolved, it tunes two things — motion speed and connection-lattice density. A startup segment gets a faster, sparser lattice with more energy. An enterprise segment gets a calmer, denser lattice that reads as structured and steady. What does not change is the accent. The brand magenta is held constant across every segment, deliberately, in code. We do not recolor to blue, amber, or violet, because that would break the brand to win a novelty.
There's a second discipline underneath the visible one: the segment is only resolved automatically when analytics consent is granted, and a visitor can always override the choice manually. First-time visitors, anyone who declined consent, and anyone who hasn't picked a path all get a neutral default. Personalization here is an enhancement to a complete experience, never a gate in front of it.
What we refuse to do: swap brand colors per visitor, personalize copy into something we can't stand behind, or run any of it on people who didn't opt in. We also keep a plain CSS-gradient fallback for devices that can't render the canvas — the personality survives even when the particles don't.
The principle: adapt the feeling, protect the identity. Speed and density carry the message; the color carries the brand, and the brand is not a variable. Done right, two visitors can have measurably different experiences and still describe the site with the same word — yours.