Studio

Case study · Bytes

Ad techB2B SaaSShipped · ongoing

Bytes

The admin studio publishers use to review, curate and measure short-form video on their own sites.

Role
Senior Product Designer, end to end
Team
Product managers, engineering, publisher success
Platform
Web admin panel (desktop first)
Scope
Review flows, playlists, social videos, analytics
Cover
Bytes: product screens from the final design

Context

Shorts, on the publisher's own site

People scroll short vertical video all day on social apps. Bytes brings that format to news and lifestyle websites: it turns a publisher's articles into short videos with AI, pulls in the videos they already post on social, and plays them in widgets on their pages, with ads between videos.

Publishers needed one place to control all of it. That place is the admin studio, and I designed it.

Smart Content

Vertical videos generated from articles in four formats: AI Bytes, Smart Framing, Shoppable and Podcast.

Social Videos

Videos from the publisher's own Instagram, TikTok and YouTube.

Hero Videos

Horizontal videos generated for the top of an article, with a vertical cut too.

Playlists

Groups of videos mapped to URLs or categories, so each page plays the right ones.

The problem

AI makes the videos. The publisher's name is on every one.

A newsroom can publish dozens of articles a day, and each one can become several videos. That is a lot to check, and editors are already busy. But nothing generated by AI should reach readers without a human saying yes: one wrong caption or a bad crop is a brand problem for the publisher.

  • Review had to be fast enough to keep up with the newsroom
  • Every decision needed enough context to be made with confidence
  • Publishers wanted to choose which videos show where
  • Revenue and ad-ops teams needed to see what the videos earn
How might weLet a busy editor approve a day's worth of AI-made videos in minutes, without losing control of their brand?
EditorsReview and approve

Want to clear the queue quickly and never miss a mistake.

Audience & content teamsCurate

Want the right videos on the right pages.

Revenue & ad opsMeasure

Want to see engagement and earnings by widget and format.

Principles

Four rules I designed by

01

Nothing goes live without a yes. Every generated video waits in Pending Approval until someone approves it.

02

Judge on the card, confirm in the detail. Approve and disapprove sit on every card; the full review view is one click away.

03

Do it in bulk. Select many videos and act on them together, with clear feedback when it is done.

04

One pattern everywhere. Smart Content, Social and Hero Videos share the same tabs, cards and actions.

Reviewing videos

A queue that works like an inbox

Every content type opens on the same tabs: Pending Approval, Approved and Disapproved, with counts so editors always know how much is left. The grid shows videos the way readers will see them, vertical and full-bleed, with approve and disapprove right on the card. Format chips and a domain switch narrow the queue.

Smart Content · grid view
Smart Content review queue in grid view with Pending Approval, Approved and Disapproved tabs, format filters and approve or disapprove buttons on each video card

A list when titles matter more

The grid is for judging visuals. A list view swaps in for scanning titles, sources and dates, with the same actions on every row.

Smart Content · list view
Smart Content list view with video details, format and actions in rows

Enough context to decide in one look

Clicking a card opens the review view. The video plays on the left; on the right sit the article it came from, its publish date, length and domain, plus an AI transcript with timestamps, so an editor can check every word without watching the whole clip. Arrows on either side move to the previous or next video without closing anything, and share and download sit in the header.

Review view
Video review popup with the vertical video on the left and details, AI transcript, Approve and Disapprove on the right

Saying no, and saying why

Disapproving asks for a reason, but never forces one. The reasons are there to improve the videos generated next, so each "no" becomes useful feedback. Hero videos come in two formats, so the review view lets editors switch between horizontal and vertical, with a reminder to check both before deciding.

Disapprove with a reason
Disapprove dialog for a hero video with optional reasons: vertical format, horizontal format or others with a text field
Hero Videos · horizontal
Hero video review in the horizontal format

Bulk actions

Clear the queue in one go

Selecting cards swaps the filter bar for a selection bar with a count: Approve, Disapprove or Add to Playlist, and a quick way out. Every action ends with a toast that says exactly what happened, so people know it worked without checking each card.

Bulk selection
Four videos selected with the selection bar showing Approve, Disapprove and Add to Playlist
Feedback after a bulk action
Toast message confirming the selected videos were disapproved
Hero Videos
Hero Videos queue with horizontal thumbnails, using the same tabs and layout as Smart Content

Playlists

The right videos on the right pages

Playlists group videos and map them to URLs or categories, so a food article shows food videos. Each row shows the cover, video count and dates, and a status toggle lets teams switch a playlist off without deleting it.

Playlists
Playlist listing with details, created and updated dates, video count, status toggle and edit or delete actions

Picking videos

Creating a playlist opens a full-screen picker to choose specific videos, with search and a video-type filter. Selecting playlists brings up the same selection bar as the queue, and every change is confirmed with a toast.

Choose specific videos
Full-screen picker to choose specific videos for a playlist with search and video type filter
Bulk select
Two playlists selected with a Delete action in the selection bar
Confirmation
Toast confirming the playlist was created successfully

Social videos

Bringing in what they already post

Social videos come from the publisher's own channels, so they arrive approved but can still be pulled at any time. Filters for Instagram, TikTok and YouTube keep each channel separate, and the list shows where every video came from.

Social Videos · list
Social Videos list view with source filters, video type pill for Instagram, TikTok or YouTube, upload date and actions
Social Videos · grid
Social Videos grid view

Dashboard

Showing what the videos earn

The dashboard answers three questions: are people watching, which formats work, and which widgets earn. Every number compares against the previous period, and the page follows the same structure top to bottom: Engagement, Content Analytics, Widget Overview and Revenue. Widget rows expand into their individual units.

Dashboard · engagement
Dashboard top: Sessions Started, Avg Session Time, Revenue and Session eCPM, with engagement charts against the previous 30 days
Content analytics
Top videos and views and watch time by content type
Widget overview
Page views and clicks by widget and an expandable widget performance table
Revenue
Revenue, ad opportunities, impressions, win rate and eCPM, with revenue by demand source, device and ad type

Design system

Built from one set of parts

Smart Content, Social and Hero Videos follow the same pattern, so they are built from one set of components: tabs with counts, format tags, review cards, approve and disapprove actions, selection bars, toasts and row actions. Adding a new content type is mostly a matter of reusing these parts.

Iterating on filters

Early versions had one chip per format. As formats kept growing, a row of chips stopped scaling, so I explored a single Filters menu with sorting next to it. When a filter is applied, the menu shows it, so the state is never hidden.

Before · one chip per format
Earlier toolbar with one chip per video format
After · Filters menu and sort
Toolbar with a single Filters menu and Sort by Newest First
After · filter applied
Filters menu showing the applied Smart Framing filter

What I learned

Designing for trust in AI content

Context beats speed

The transcript and source details did more for review speed than any shortcut. People decide faster when they trust what they see.

A "no" is data

Optional reasons on disapprove turn rejections into feedback for the video generation, at almost no extra effort for editors.

Patterns scale

One review pattern across every content type meant new formats slotted in without new screens to learn.

What's nextSmarter filters as formats keep growing, and review insights that show which kinds of videos get disapproved most.

Video thumbnails in these screens are royalty-free photos from Unsplash by Benjamin Combs, Lechon Kirb, Jon Ottosson, Danka & Peter, Marat Gilyadzinov, Alexander Shustov, hieu le, Abigail Keenan, Roksolana Zasiadko and Roberto Nickson.