Designing the Foundation of a Data-Heavy Ad-Tech Platform

One layout system and role-based architecture for six user roles sharing a real-time ad-tech platform.

Company

Primis Video Discovery

Product

A Video Ad-Tech Configurations Platform

Feature

Data-heavy dashboards
Role-based workflows
Real-time performance analysis

Year

2025

Role

Sole Product Designer

Impact

Viewing a publisher’s data used to mean logging out and back in with that publisher’s account, 30-50 seconds each time.

Now users pick the publisher on the dashboard and the view switches in under a second.

Time to insight dropped 22%, measured in the operations team’s task timings for each role.

In usability testing, ops users found the insight they needed in a chart within 8-15 seconds.

About Primis

Primis is a video ad-tech company. It runs a video player on publishers’ websites, fills it with video content and ads, and shares the ad revenue with the publishers. Syndicators supply video content to the network, advertisers buy the ad space, and Primis’s ops team manages it all across multiple SSPs.

The platform

All of these parties work in one platform. Ops manage domains, campaigns and placements. Publishers track their revenue and content performance. Syndicators track how their content performs and what share of revenue it earns. Advertisers track spend and delivery. Six user roles in total, each with different permissions.

What this project covers

I designed the foundation that the rest of the platform is built on, in three parts:

  • User-role layouts: one layout system that adapts what each of the six roles sees and can do
  • Global dashboard: the ops team’s entry point, comparing any publisher against the whole network
  • Publisher dashboard: each publisher’s view of its own performance

The problem

The interface treated all six roles the same. Every role saw every data block, so finding the relevant signal meant manual checks. Views were split across modules, which made it hard to see performance as a whole. To see one publisher’s data, a user had to log out and log back in with that publisher’s account.

The roles didn’t just need different data. They had different jobs and different mental models, so filtering one shared view wouldn’t be enough.

User-Role Layouts

Research

I ran a discovery program with 8 platform users across ops, publishers, syndicators and advertisers. The same group later informed both dashboards and the campaign and placement management.

I audited six ad-tech consoles (PubMatic, Magnite, Google Ad Manager, OpenX, Connatix and Teads) for how they handle navigation across roles, and looked at how the AWS IAM console and Zendesk reveal controls based on permissions.

What I found 

Each role watched something different. Ops cared about overall performance. Publishers cared about domain and placement targeting. Advertisers cared about domain and publisher targeting. Syndicators cared about how their content performed across channels and their share of revenue. Because every role saw everything, users fell back on manual checks to find the few numbers that mattered to them.

Decisions

One layout, adapted per role. I defined one layout structure as the base for every screen, and let the role decide what fills it. Fully separate interfaces per role would have been easier to tailor, but they would have split the product into six versions to build and keep consistent.

Permissions drive the interface. Layouts and navigation follow the platform’s permission model. A role’s permissions decide which data it sees, which actions it has and which configuration options appear, so the interface never offers something the user can’t do.

Various User-Roles UI Layouts

Colors and visual language

Primis had a limited visual language. I extended it into a semantic color system with clear roles for status, hierarchy and interaction, and set one icon approach built on MUI components, so icons are reusable and easy to hand off to engineering.

Primis Extended Color Palette

Global Dashboard

Research

1. Stakeholder & Business Interviews
From the same 8 participants, I focused on which metrics each role needed from a central dashboard and why.

2. Competitive & Ecosystem Benchmarking
I audited 8 dashboards in ad-tech and data ops tools (SSPs, BI tools, monetization platforms) to find the common data patterns and layout conventions that make insight quick to reach. I also compared how leading products handle filtering, cross-module navigation, and multiple data slices, such as periods and role-scoped KPIs.

3. Cognitive & Workflow Mapping
I ran task analysis sessions where users did core tasks on the legacy interface: finding a revenue trend, changing the period, and comparing a publisher against global. Their main pain points were context loss when moving between modules, unclear period selectors, and ambiguous KPI definitions.

Core insights

Users need control of context (periods, slices, scope) before they need detail. Adoption rises when navigation and search are predictable and persistent. Visual hierarchy has to match urgency: what matters now versus exploration through drill-downs.

Decisions

Context controls in one fixed place. A time selector with presets and a custom range sits in the top bar on every screen, next to a global search across publishers, impressions and profit.

Compare without switching accounts. Ops pick any publisher or advertiser from the table and see its performance against the whole network, while staying logged in as themselves. This replaced logging out and back in with each account, and it’s the change behind the 30-50 seconds to under a second result at the top of the page.

The legend is the control. Users add or remove metrics directly from the chart legend. Each metric gets its own Y-axis, so values with different ranges stay readable side by side.

Ideation Wire-Frame

Final Global Dashboard

Publisher Dashboard

Research

1. Persona‑Driven Discovery
I ran 1:1 interviews with Primis clients: publishers, syndicators, and hybrid roles. For each persona I captured the questions they ask every day, the actions they take, and how they read data. I consolidated the needs of four personas:

  • Publisher: trend lines for revenue and content performance, alert signals when metrics decline, and the ability to bookmark reports.
  • Advertiser: pacing controls, spend efficiency over time, and placement quality metrics.
  • Syndicator: comparisons across channels, syndicated revenue share, and variance in partner contribution.
  • Publisher-syndicator (hybrid): publishers who also syndicate their own inventory.

2. Task & Context Mapping
I gave users prototype dashboards with real anonymized datasets and asked them to complete critical tasks, such as finding last quarter’s revenue and showing or hiding data. I measured time on task, accuracy, and where they got confused.

3. Competitive Benchmark & Best Practices Audit
I mapped how leading BI and analytics dashboards (Looker, Tableau embeds, PubMatic, Magnite, and others) structure publisher-centric data, and noted their best practices for KPI grouping and layout.

4. Role Variation Framework
I defined a role adaptation matrix that maps the widgets, comparisons, and filters each role needs. I also recorded exceptions where roles overlap, such as a hybrid who needs both publisher breakdowns and syndication data.

 

Core Insights

  • Publishers care about direction more than raw numbers: is performance improving consistently? Trends with annotations (change percentage, signal flags) are easier to act on than static KPIs.
  • Unused panels add noise. Dashboards should collapse them and still allow optional expansion.
  • Admins and account managers want a granular overall view, while publishers want performance insights.
  • Users lacked trend context before they filtered.
  • Users ignored the time selectors because they weren’t clear enough.
  • Publishers wanted narrative comparisons (yesterday versus last month) more than static numbers.

Decisions

Each role gets its own dashboard from one framework. The dashboard adapts its widgets, tables and KPIs to the logged-in role, based on the role adaptation matrix. Advertisers don’t see syndication metrics, syndicators don’t see publisher-only content breakdowns, and hybrid publisher-syndicators see both.

Trends before numbers. Publishers cared about direction more than raw values, so the dashboard leads with trend lines annotated with change percentages and signal flags, then lets users drill down into specific breakdowns.

Unused panels collapse. Panels a user doesn’t need are collapsed by default and can still be expanded, so the dashboard stays focused without hiding anything.

Metric definitions where they’re read. Tooltips and hints explain each metric in place, because users weren’t sure what some KPIs meant.

Ideation Wire-Frame

Final Publisher Dashboard

Publisher with Syndication Data Vs. Publisher Lacking Syndication Data

Publisher Vs. Syndicator Layout

Privacy Preference Center