Ritu Madan
+4
May 28, 2026
visibility 551
star star star star star
(0 votes)

Finding Thomas Part 1 - The Observation Post

Meet Thomas

Thomas is the returning visitor who has been to your site forty times but has never filled out a form. He opens every newsletter but rarely clicks through. He reads your long-form content to the end while your analytics records him as just another session. He has a deep, genuine interest in the topics you cover — and an equally deep invisibility in the metrics your team reviews every week.

He does not bounce. He does not unsubscribe with a parting comment. He does not leave a one-star review. He just quietly, incrementally, recalibrates whether your experience is worth his time. And when he decides it is not — when the accumulated weight of feeling unseen finally tips the balance — he stops coming. Without a word. Without a signal.

We call this a recognition failure. And it's the most expensive problem in digital experiences that almost nobody is actively measuring.

About This Series

Finding Thomas is a five-part series about understanding and solving this problem using the Optimizely platform. Across these posts, we follow Thomas through the full digital experience layer — what your CMS can reveal about him, what ODP can connect across his behavioral history, how Personalization can respond in ways that make him feel known, and how Opal helps teams move from insight to action at scale.

Each post covers one layer of the stack. Together they trace a complete, closed-loop recognition system — one that finds Thomas before he finishes leaving, and makes him feel, for the first time, like someone noticed he was there.

In Part 1 of our Finding Thomas series, we trace where this starts — and why the CMS most teams treat purely as a publishing tool is actually the first place Thomas's story can be caught before it ends.

Read the full story here.

 

May 28, 2026

Comments

error Please login to comment.
Latest blogs
Composition Over Inheritance: Why Your Content Contract Is Not a Base Class

Inside the structural conformance pattern in SaaS CMS — from server-side inheritance to pipeline governance. A contract in Optimizely SaaS CMS is...

Vipin Banka | Sep 19, 2026

Optimizely Opti ID Integration: Why the API Key Was Missing from the DXP Management Portal

While working on an Optimizely CMS 12 Opti ID integration recently, we ran into an issue that initially appeared to be related to SSO authenticatio...

Madhu | Sep 18, 2026 |

Extending a Contract: What You Can Override

Contracts share fields across content types — but not every field setting can be overridden. Push the same contract onto several components, and CM...

Chirag Khanna | Sep 18, 2026 |

Building a Blazor Server UI Inside the Optimizely CMS 13 Admin Shell

What I learned shipping a Blazor Server UI inside Optimizely CMS 13 — Razor components in a NuGet package, the Blazor hub next to MapContent(),...

Stanisław Szołkowski | Sep 17, 2026 |