U4-11485 - Ensure Variants in v8 are implemented flexibly and not just tied to language/culture

Created by Dan Booth 28 Jun 2018, 08:06:58 Updated by Dan Booth 28 Jun 2018, 08:46:21

V8 has a lot of cool stuff, but things like removing legacy code and implementing a new caching mechanism, aren't "features" that are easy to sell to clients (even if they appeal to devs). The standout new feature for a lot of people will be Variants - the ability to vary content on a per property basis - and this could be the "killer feature" that really makes V8 worth changing to. But to be ''really'' useful this needs to be flexible and not just tied to language - it can, and ''should'', be more than just a way of making multilingual sites.

Here are a few things that variants could be used for if implemented in a generic and flexible way:

  • A/B Testing - You have two variants of a page but with different content that could be served randomly to visitors for split testing.

  • Personalisation - You have different content for different "personas" that are identified by user journeys through a site

But the most exciting thing for me is that the community will think of many more ways of using this for exciting and new ways of managing content and making sites more dynamic. If you build the foundations right, I know people will build cool stuff on top of it. But for this to happen it means variants should never be tied to just the installed languages. There's needs to be a flexible way of creating your own variants that plugs into the content-editor workflow and a simple API for accessing variant content.

Now, this may well be something that is already in hand - I'm not familiar enough yet with the v8 codebase to know. All I ask is that it's something you consider, because it needs to be baked into the core to be really useful. Do that and I guarantee people will build cool stuff with it that nobody has yet thought of. Thanks!


Niels Hartvig 28 Jun 2018, 08:40:50


It's already in the cards. Language Variants for v8.0 is first step. Following that we'll be looking into segments and general variants for v8.x.

So they'll be flexible, but to ensure we ship and stick to our mission of making things simpler (not perfect) we take one step at the time :)

Dan Booth 28 Jun 2018, 08:46:21

@hartvig Fantastic, that's great to know. Exciting times ahead #h5yr

Priority: Normal

Type: Feature (request)

State: Closed


Difficulty: Normal

Category: Architecture

Backwards Compatible: True

Fix Submitted:

Affected versions: 8.0.0

Due in version:


Story Points: