Kunal Goel
Back to work
Enterprise UX · Case Study · 2024

An in-house annotation platform built to power the AI roadmap

The company's AI programs ran on CVAT and outsourced tools. I designed the platform that replaced them — unifying the entire annotation lifecycle into one owned, enterprise-grade product.

Senior UX Designer · E2E Web · SaaS + On-Premise 6 months · 2024 Team of 5 · Sole designer
labelloop.app
LabelLoop annotation canvas — object list, shortcut toolbar, submit and save states
Scroll
Context

Owning a core capability the company was renting

The company's AI programs depended on CVAT stitched together with separate operational tools — functional, but not owned: no workflow control, rising cost, a hard ceiling on scale. The Managing Director (India) commissioned an in-house replacement as part of the AI strategy — a direct mandate to bring the entire annotation lifecycle into one owned platform.

Annotation was the foundation every model was built on — and the company was renting it. Building LabelLoop was about owning a core capability, not shipping a feature.

I joined as the sole designer on a five-person team — a PM, two engineers, one QA, and me — owning the product experience end to end. Six months to a working enterprise platform.

5
person team
1
sole designer
6
months, E2E
The problem → success criteria

The work wasn't the bottleneck. The coordination around it was.

Before
The CVAT world
×A patchwork of tools stitched together by hand
×Manual, repetitive project setup every time
×Painful, fragile schema creation
×Weak collaboration across roles
×Performance limits at scale
×Little operational visibility
Transformed into
After
LabelLoop — success criteria
CVAT fully replaced
One lifecycle, one platform
Reusable, governed configuration
Role-fit workflows
Operational clarity
Built to scale
Competitive analysis & opportunity

Why weren't existing tools enough — and what did that mean the platform had to become?

Leadership had already committed to building in-house. My job was the design question beneath it: mapping the category to find where the real opportunity lived.

The operational gap Annotation capability Basic Advanced Operational depth Single tool Enterprise platform the move we designed for Supervisely Label Studio CVAT primary benchmark LabelLoop
CVAT — strengths

A capable, proven annotation engine. The core act of labeling was never the problem.

CVAT — limitations

A tool, not a platform. Setup, tracking, roles and review lived outside it — and it assumed one generic user. The opportunity: wrap the engine in an operational platform with role-based workspaces.

From mandate to product direction

My role wasn't to make the call. It was to define what it had to produce.

Leadership decided to invest in-house — to own a core capability and remove a pipeline dependency. From there, two obvious paths sat on the table. Neither survived the question underneath them.

×Extend CVAT

Bolts operational capability onto an annotation-first architecture. You patch the gaps and inherit the single-generic-user model anyway.

×Adopt another tool

Trades one external dependency for another — and defeats the entire ownership rationale that started the project.

The realization

The problems weren't annotation problems — they were platform problems, living between tools and between roles, where no better canvas can reach.

The decision

Design the platform, not the tool.

This resolved the project from "redesign annotation" into "design the enterprise platform annotation is one part of — built to be owned, governed, and scaled with the AI roadmap." Every downstream decision follows from this.

Observation → opportunity → decision

Every feature traces back to something observed

Observed
Opportunity
We built
Annotation assumes one generic user
Separate experiences by role
Role-based workspaces
Lifecycle split across disconnected tools
Own the whole loop end to end
Unified project lifecycle
Schemas fragile, rebuilt per project
Reusable, governed configuration
Reusable schema managementdraft / published
Schema management thumbnail
Operational status lives outside the tools
Surface progress, workload & quality centrally
Centralized dashboards
Operational dashboard thumbnail
Review depends on manual coordination
Make quality a structured, traceable step
Structured QC workflow
Labeling interrupted by navigation
Keep the tools in the working context
Focused annotation canvas
Annotation canvas thumbnail
My role & contributions

The only designer, owning the experience end to end

I framed the problem and shipped the build. I partnered with the PM on scope and priorities, made the structural calls — the role model, the IA, the lifecycle flow — and stayed embedded with the two engineers through implementation. I led the design direction; I did not manage other designers.

01Product Strategy
02UX Strategy
03Information Architecture
04User Flows
05Interaction Design
06Visual Design
07Design System
08Developer Collaboration
Who it was for

Four roles. One platform. Four workspaces.

04
Super Admin
Goal — Manages clients, users & platform governance.
Need — Oversight without operational clutter.
Client Admin
Goal — Manages projects, datasets, roles & outputs.
Need — Control without overload.
Annotator
Goal — Labels all day, inside the canvas.
Need — Speed, focus, minimal navigation away from work.
Quality Checker
Goal — Validates annotations.
Need — Clear review states & a tight, traceable loop.

One generic interface couldn't serve these roles. Role clarity had to be built into the foundation — so each role gets its own workspace, navigation, and permissions.

How I approached it

No research budget. A six-month clock. The workflow as the artifact.

I grounded discovery in the real workflow — walking the CVAT process step by step, PM discussions on constraints, direct annotator conversations, and a review of live-project bottlenecks. Not formal research, but enough to map the lifecycle honestly. Everything pointed at one structural problem.

01 · Understanding the problem

Fragmentation across tools and roles was the recurring theme in every conversation.

02 · Framing it

The design problem became consolidation with role clarity — one platform, four workspaces.

09 — The annotation lifecycle

One owned loop, with state visible at every step

1Task creation& allocation 2Annotation 3Submission 4QC review 5Pass / Fail 6Iterate orcomplete 7Export(XML / JSON) The loop Ownership & state visible at every step
Design decisions that mattered

Five decisions, on real screens

Decision 01 · The screen I'm most proud of

Focused annotation canvas

Decision — A canvas-first workspace with integrated object management, keyboard shortcuts, save states and contextual tools in place.
Annotation canvas with object list, shortcut toolbar and save states 2 3 1 4
Problem — Annotators live in one screen; every trip out of it costs momentum.
Why — It keeps the annotator inside the work — the single most repeated action in the platform.
1Object & label list, always in view
2Shortcut toolbar for every tool
3Set Global Variables, without leaving
4Explicit Save & Submit states
Manage Roles with per-resource permission matrix 1 2 3
Decision 02

Role-based architecture

Problem — One interface exposing every action to everyone is just noise.
Decision — Dedicated dashboards, navigation and permissions per role.
Why — Removing irrelevant surface area entirely beats hiding it behind menus.
1Role-scoped navigation
2Granular create / read / update / delete matrix
3Contextual row actions only where permitted
Manage Schemas — reusable schema records with object counts 1 2 3
Decision 03

Reusable, maintainable schemas

Problem — Schema creation was manual, fragile, and caused rework mid-project.
Decision — Objects, attributes and global variables, with draft-vs-published governance.
Why — Schemas become reusable across projects and can't break work already in flight.
1Reusable schema records, shared across clients
2Object count surfaced per schema
3Create & version — draft before published
Decision 04

Structured QC loop

Problem — Review depended on manual coordination, with no clear states.
Decision — Explicit pass/fail plus comment-based feedback tied to the annotation, surfaced on shared dashboards.
Why — Informal back-and-forth becomes a traceable, measurable step.
1Annotation progress per project
2Quality-check completion, tracked separately
3Status rolled up across clients
Dashboard with per-project annotation and quality-check progress 1 2 3
Manage Dataset — centralized datasets with type and source metadata 1 2 3
Decision 05

Centralized project & dataset management

Problem — Manual setup, with progress living in people's heads.
Decision — Guided creation, centralized datasets, and dashboards for the whole operation.
Why — One operational overview instead of scattered spreadsheets and tribal knowledge.
1Centralized datasets, grouped by client
2Type & source metadata on every record
3Search & filter to associate tasks fast
Design trade-offs

What I chose — and what I consciously chose not to do

Every trade-off names the constraint, the call I made, and the thing I deliberately deferred. Read the lines on their own to see where the scope lines were drawn.

Timeline vs. research

Decision — Ground discovery in CVAT analysis plus PM and annotator conversations. The tool was the research artifact.
Why — Six months, no budget: honest lifecycle mapping beat no discovery at all.
Deferred personas, journey maps and usability testing — flagged for post-launch validation.

Small team vs. breadth

Decision — Invest early in a reusable design system, set each pattern once.
Why — Two engineers against enterprise scope — leverage was the only way to hit the surface area.
Deferred bespoke, screen-specific UI — except the core canvas.

Multiple roles vs. simplicity

Decision — Role-based workspaces, one per role.
Why — Removing irrelevant surface beats hiding it — for four distinct roles.
Deferred a single configurable "power" interface — it would reintroduce the clutter.

Flexibility vs. governance

Decision — Draft-vs-published schema governance.
Why — Protecting live projects outweighs unlimited edit freedom.
Deferred fully open, edit-anytime schemas.

Scalability vs. speed

Decision — Design the IA and system for extensibility from day one.
Why — Retrofitting scale later is far costlier than building the seams now.
Deferred speculative future-product features — built the foundation to extend, not the extensions.

Enterprise complexity vs. focus

Decision — Prioritize the core lifecycle loop and the canvas.
Why — That's where daily value lives — multi-tenancy and governance are complex but secondary.
Deferred exhaustive admin/governance tooling — an extensible baseline, not every edge case.
Screens

The platform, at a glance

Click any screen to zoom in for detail

Operational dashboard
01 · Operational dashboard
Annotation canvas
02 · Annotation canvas
Roles and permissions
03 · Roles & permissions
Members and users management
04 · Members & users
Schema management
05 · Schema management
Dataset management
06 · Dataset management
Design system

A system built for leverage, not decoration

Shared color and text variables plus reusable components for the repeating data-dense patterns. The payoff is leverage: set a pattern once, and engineers ship consistent, correct UI without me on every screen.

Color tokens
Primary / 700
#0F766E
Accent / 500
#12A79A
Ink / 900
#0F172A
Surface / 100
#E2E8F0
Type scale · Roboto
Heading26 / 700
Subhead18 / 600
Body & data15 / 400
Label / caps12 / 600
Spacing scale · 4px base
8 · xs
16 · sm
24 · md
40 · lg
Buttons & variants
+ Create Secondary Disabled
Inputs & search
Label name
Search
Table & sort
Name
Schema_10Dec Published
Schema_8Jan Draft
Navigation
Dashboard Schema Configure
Schema
Dataset
Status states
Success Failed Empty No access
Radius & elevation
r8
r12

A system was the only way to build an enterprise product this fast — and it kept the product coherent across modules built quickly, and extensible for future AI products.

Impact
The defining outcome

LabelLoop replaced CVAT as the organization's internal annotation platform — the team transitioned its annotation workflows off CVAT and onto the product we built.

That transition was the mandate, delivered. The estimates below are workflow-derived — each one traceable to a specific design decision.

~35–45%
less context switching

Consolidating PM, annotation, schema, review and dashboards into one platform eliminated tool-to-tool movement.

~40–50%
better workflow visibility

The previous workflow had no unified overview; dashboards, status and reporting introduced one.

~30–40%
less project-setup effort

Guided creation, reusable schemas and centralized datasets replaced manual per-project reconfiguration.

~25–35%fewer annotation interruptions
~30–40%faster onboarding
~20–30%less quality-review effort

// Directional estimates grounded in feature consolidation, IA and workflow redesign — not statistical measurements.

Reflection

Good craft follows from good architecture

I came in thinking like a screen designer — that a great product is a sequence of well-crafted interfaces. LabelLoop taught me that at enterprise scale the interface is almost the last thing that matters. The decisions that carried it were structural: the role model, the IA, making the whole lifecycle visible and traceable. Get those right and the screens almost design themselves.

It also changed how I think about constraints — a five-person team and six months forced the clarity, pushing me to design a system rather than a pile of screens, and to make product decisions, not just design ones. I left a different kind of designer: one who starts from the business problem and the underlying structure, and trusts that good craft follows from good architecture.

LabelLoop · Enterprise UX case study · 2024 Back to top ↑