I’ve just had a baby, and I must admit, if someone said that to me, I’d be pretty mad.

But I’ve got to face facts; soon he’s gonna to be in a nursery with thirty or so other special little spuds. We’re going to have to make some concessions to conformity; he’s gonna need to be standardised!

“I’m sorry, but we just don’t have space for his pet elephant. It’s a fire-hazard, and frankly, the enormous poops are distracting the other children.”

You normally bang on (incessantly) about clickstream data – what’s this all about?

Projects… (and clickstream data).

We all want to think that our project requirements are unique. That our baby is special.

And because our baby is special, it requires a special and bespoke solution building for it.

This just isn’t true. And when it comes to clickstream data (as with most things), the pursuit of the bespoke is costly and inefficient.

And it carries on being costly and inefficient for however long we have to carry the big-feathery-albatross around our neck.


Phones and laptops, TVs and smart-watches… they’re machines. They have a small number of simple and repeatable input methods. They are not bespoke; they wouldn’t work if they were.

A phone is a touch screen. We can look at stuff and tap on stuff. That’s it. Yet think of all the myriad things we can do simply by looking and tapping.

Yeah… elaborate a bit more

Let’s say we build a chat function.

<sarcasm>Obviously, we’re gonna want a special event for when chat becomes available, another special event for when the customer clicks to chat, another when the chat starts, one if it gets transferred, and one for when the chat is complete. Soooo… give me at least five bespoke events, along with bespoke data mapping for each.</sarcasm>

Have we magically built a brand-new prototype in communication hardware to handle these bespoke chats events? Nope! It’s gonna to use look-at-stuff-and-tap-on-stuff, like everything else.

You seem agitated?

Yeah, I am. We wouldn’t build a website or an app in this way; every component bespoke, with nothing shared or reused. Yet for clickstream data, this is somehow acceptable.

I suspect it’s because we don’t traditionally think about clickstream data collection in the same way as we do web and app development. We should though.

A lot of digital data collection has grown organically – often with small, under-resourced teams with non-technical backgrounds. This really isn’t good enough anymore (if it ever was). The inefficiency is startling. The potential for lost revenue; eye-watering.

What’s your solution then, clever clogs?

Data layers baby! Lovely lovely data layers. Standardised data layers. Data layers deployed consistently. Data layers as far as the eye can see!

Expect a follow up about data layers soon, then?