Product design case study · giffgaff internal tools
Rebuilding the agent platform
How giffgaff replaced the software its support agents use to manage a member's account, and what the agents themselves decided about it.
01 · Discover
What agents said about the old tool
| Frustration | In their words |
|---|---|
| Repeated logins, short timeouts | "Timing out too quickly disrupts my flow" |
| Slow loading and updates | "It takes ages for updates to appear, sometimes you're not sure if it's gone through" |
| Cluttered comments | "There's too much rubbish in comments that makes it hard to find what matters" |
| Dense pages, heavy pagination | "It's just too cluttered sometimes, I miss key info" |
| No history of what happened | "There needs to be a history log, so we don't waste time redoing things" |
Source: survey of 27 agents, in their own words
02 · Frame
Not one of them asked for more features
Almost every complaint was friction, clutter or waiting. So the objective became simple: everything added has to add value, not noise.
03 · Ideate
Ranked by agent time consumed, not by how loudly it was asked for
| Agent task | Times a year |
|---|---|
| Looking up the identifier of a dispatched phone | 72,000 |
| Handling delivery problems, changes and timescales | 13,685 |
| Requesting a replacement device, at the time done by hand | 4,008 |
| Extending a return window | 360 |
| Issuing a VAT receipt | 279 |
The task at the top was being served by a shared spreadsheet, and no agent had ever raised it. It had stopped feeling like a problem. It only surfaced because someone counted.
A hard call
The top request was turned down
What they asked for
Bring the comments section back, redesigned, with visible history and a clearer hierarchy.
What later research said
A visit to the contact centre put clutter and non-essential information at the top of the list. Comments were a large part of the clutter.
The decision
Notes were not carried over. Saying no to a direct user request on the strength of other user research only holds up if the evidence is in the open.
04 · Design
Split the way agents actually work
The top navigation had run out of room. Two recent additions meant some agents could not read all the tabs on screen.
A side nav grows downwards and allows grouping, so it was split in two: find a member, or run the service.
Member view
One member, everything at a glance
Agents start with a person on the other end of a chat, not with a dashboard. So the member view leads: who they are, what they pay, what they have.
Built from giffgaff's consumer design system rather than an off-the-shelf admin kit. That was challenged, fairly, because it added months. Agents settled it: the familiarity helps when they are describing a member's screen while looking at their own.
Modes
The platform shifts mode with the agent
Inside a member's account the main navigation collapses to icons, handing the space back to the work.
Status is on the surface rather than behind tabs. Triaging a fault should not mean clicking through five of them to find out whether anything is wrong.
Design straight into code
2 hours
from navigation concept to running on a test environment
An engineer generated a working concept with Claude. Design judged it against the design intent and the design system, corrected what was wrong, and it went out.
On a later flow the direction reversed completely: the code came first, and the Figma file became the record of the decision rather than its origin.
It works because the design system was made machine-readable first, so generated screens reach for real components and tokens instead of inventing a look.
05 · Test
How agents rate it now
9.4/10
Easy to use day to day
9.4/10
Easy to find things in the menus
9.1/10
The new navigation, rated before using it
One caution on the scores: daily users rate their tools generously. "How easy is this?" produced nines. "Which task takes you longest, and what makes it slow?" produced the roadmap.
06 · Measure
Set against what agents originally raised
| What agents raised | Where it landed |
|---|---|
| Repeated logins, short timeouts | Single sign-on removed the manual logins entirely |
| Slow loading and updates | Rebuilt on a faster platform; one agent in ten still picks it as a hassle |
| Cluttered comments | Deliberately not carried over |
| Dense pages, heavy pagination | Addressed through the navigation redesign and simpler pages |
| No history of what happened | Added feature by feature; engineer install history still flagged as unclear |
The biggest irritation now is error messages that don't explain what's wrong, chosen by half the agents. That's a content design problem presenting as an interface one, so it went to the teams who own those messages.
Reflections
What that changed about designing
Less
Drawing every state
Producing every variant by hand, and writing specifications describing what a component already does.
More
Deciding what is worth building
Holding the information architecture and the research, which no generated component knows anything about.
Harder
Catching plausible but wrong
One generated pattern was rejected because it hid fault information from someone triaging a fault. Only a person holding that principle catches it.
What I learned
The brief came from agents. So did the hardest decision.
- 1
Count the work before designing it
The biggest hidden cost had never been reported, because it had stopped feeling like a problem.
- 2
Expertise hides friction
Ask which task takes longest, not whether the tool is easy.
- 3
Saying no can be user-centred
Turning down a request is user-centred design too, as long as the evidence behind it is in the open.