About a year ago I wrote about experimenting with an MCP server for Umbraco Engage, and how surprisingly natural it felt to ask questions about your analytics instead of clicking through dashboards to find the answers yourself. That experiment planted a seed, and today I get to write about what grew out of it: Umbraco Engage AI, now in public beta! As the Product Manager for Engage this one is a bit of a pride project for me, so let's talk about that! 🚀

The dream we couldn't build yet

Here's a little secret: we've wanted to do something with AI in Engage for years. Smart recommendations, automatic insights, a copilot that helps you understand the data Engage collects... the ambition was always there. What we were missing wasn't ideas, it was plumbing. Building an AI feature properly means an agent runtime, LLM providers, permissions, a chat interface, and a dozen other things that have nothing to do with what makes Engage special.

That changed when Umbraco built its AI framework. Suddenly all of that plumbing existed as a platform we could stand on, and the question shifted from "how would we ever build this?" to "what should we build first?". It doesn't let us do everything we've envisioned over the years just yet, but it is a genuinely good foundation to start from. 

So what is Engage.AI?

Simply put; Engage.AI puts an AI copilot inside the Engage section of your Umbraco backoffice. You open the sidebar, you type a question the way you'd ask a colleague, and the copilot answers using your actual Engage data.

Some things you can ask it today:

  • "How is my summer campaign performing this month?"

  • "Why would a visitor end up in my 'Returning Customers' segment?"

  • "Which A/B tests are running right now?"

Behind the scenes this works through 17 tools, small well-defined abilities the copilot can use, covering campaigns, goals, segments, personas, customer journeys, A/B tests, top pages, and traffic sources. Every single one of them is read-only in this release: the copilot can look at your data and explain it, but it cannot change anything. More on why later!

The package is Umbraco.Engage.AI 17.0.0-beta1, it runs on Umbraco 17 with Engage 17.4.0 or higher, and we're calling it a beta on purpose: tool names and result shapes may still change while we learn from real usage.

Built from 115 real marketer questions

This is the part of the story I'm proudest of. When we started shaping the tools, we didn't ask ourselves "what data does Engage have that we could expose?". We did it the other way around. We collected 115 real questions marketers actually ask, sorted them into recurring shapes, and designed every tool as an answer to those questions.

That order matters. Engage has always been a marketing product, so the copilot had to speak marketing too. A marketer doesn't care which database table holds their conversion data, they want to know whether that Black Friday campaign actually worked, and they want the answer in a sentence instead of a CSV export. Working backwards from real questions is how you end up with a tool like "explain this segment to me in plain English" instead of yet another raw data endpoint.

Standing on the shoulders of Umbraco.AI

Now for the product management confession: the smartest decision we made was deciding what to skip. 😅

Umbraco.AI is built a few desks away from us, virtually speaking: it's Umbraco's own AI framework, made by our colleagues as the shared foundation for AI across the whole product family. So when the Engage team started on Engage.AI, we made ourselves a promise: anything they had already solved, we would not solve again.

That's why Engage.AI contains no AI runtime of its own. No LLM client, no provider integrations, no chat UI. The whole package depends on exactly two things: the Umbraco.AI agent platform and Engage's own infrastructure. Even the copilot sidebar is the shared one from Umbraco.AI; our package tells it "you're welcome in the Engage section" and hands it 17 Engage-shaped tools, which the platform picks up automatically.

All the time we saved on plumbing went into the part only the Engage team could build: teaching the copilot to genuinely understand campaigns, segments, and goals. There's a nice bonus for our customers too. Engage.AI is a separate, opt-in package, so if you don't want AI in your installation you simply don't install it, and Engage itself stays completely AI-free.

Trust before tricks

Marketing data is where trust matters most! Therefore, everything is read-only by design. Nothing in this beta writes or changes Engage data, and when we do add actions that change things, they will ask for explicit confirmation before running. The copilot also refuses to guess: if you ask for a time period the reporting doesn't support, it won't quietly pick something close, it stops and asks you to choose a supported period instead. Engage's reporting tables don't include today's still-incoming data either, so every performance answer tells you that upfront instead of overstating today's numbers.

My favorite detail is the smallest one. A campaign with no measurements and a campaign that genuinely scored zero are two different stories, and the tools never blur them together: "no data" is never presented as "zero".

None of this makes for a flashy demo. It does decide whether a marketer trusts the number on their screen, and that was the point. Trust first, tricks later!

Wrapping up

The beta is a starting point. The direction is clear to us: smarter insights, more of those 115 questions answered, and step by step the ability to act on your data instead of only explaining it, with the same trust-first approach every step of the way. I won't put dates on any of that, but the dream we carried around for years finally has a place to grow. If you're running Umbraco 17 with Engage, you can try the beta today, and I would genuinely love to hear what you ask it first.

If you've made it all the way to the bottom, thank you for your interest! If there is anything you'd like to learn more about, feel free to contact me over at my socials available at the Contact page. Have you given Engage.AI a try, and did the copilot answer your question? Let me know! 😊☕

Corné Hoskam
Written by

Corné Hoskam

Team Lead & Technical Product Manager at Umbraco. Writing, talking, teaching & learning about everything technology related.

Follow →