in demand 2 design subscription slots available. Discover →
T

We design high-performance websites and applications

UX/UI and product revenue design for startups and ambitious teams who want clarity, speed, and measurable impact.

Revenue-led design that moves the needle

We don't just make things look good — we design digital products that drive measurable business outcomes for ambitious teams.

Flexible design subscription — no contracts

Senior UX and product design on demand. Faster than hiring in-house, with no long-term commitments. Pause or cancel anytime.

Digital design offerings

We strip away the noise to deliver UX that works — clear, intuitive, built for real people.

UX Strategy

Experience design

We shape how users navigate websites, SaaS platforms and mobile apps — every interaction crafted for clarity and conversion.

Read more
Visual Design

Interface design

Clean, polished interfaces that feel as good as they look — crafted for clarity, brand consistency, and measurable performance.

Read more
End-to-End

Digital product design

From the first sketch to launch-ready screens — partnering with product teams to design digital experiences users love and businesses grow on.

Read more
Touchpoints

Service design

Designing end-to-end customer journeys and internal processes that create coherent, seamless experiences across every touchpoint.

Read more
Scale

Design systems

A great design system is the foundation of every great product. We build living, breathing systems your team can own and evolve without us.

Read more
Optimise

Product audit & UX review

A structured expert review of your existing product — identifying friction points, conversion blockers, and quick wins with a clear action plan.

Read more

Need everything, continuously?

Our monthly subscription gives you a dedicated senior design
team — no hiring, no overhead, no contracts.

Explore subscription →
The Treasury team
Meet the team

We're a
friendly bunch

Great design is a collaborative effort. We build long-term partnerships built on empathy, transparency and shared ambition.

Meet the team behind the work

Trusted by teams who don't settle for average

Our digital design services →
Boots
Sainsbury’s
BT
Indeed
Tesco
Emaar
Post Office
Damac
DEWA
Shell
Haleon
Carrefour
The Dubai Mall
Aramtec
KAEC
Betterhomes
Federal Tax Authority
Rivoli
Sharjah
Boots
Sainsbury’s
BT
Indeed
Tesco
Emaar
Post Office
Damac
DEWA
Shell
Haleon
Carrefour
The Dubai Mall
Aramtec
KAEC
Betterhomes
Federal Tax Authority
Rivoli
Sharjah
Industry

Why B2B Data Tables Are the Hardest UI Problem Nobody Talks About

7 min read

Data tables are everywhere in B2B software — dashboards, CRMs, admin tools, analytics platforms. Yet for all their ubiquity, they remain one of the most underestimated design challenges in the field. Get them wrong and you lose the trust of your most important users: the power users who live in your product every day.

Why Tables Are Uniquely Hard

Most UI components have a clear primary state. A button either gets clicked or it doesn't. A modal either opens or closes. But a data table has to handle everything at once: sorting, filtering, pagination, selection, inline editing, bulk actions, empty states, loading states, error states, and responsive behaviour — often simultaneously, for datasets ranging from 5 rows to 500,000.

The complexity compounds because B2B tables serve radically different user types. An analyst needs to export and sort. An ops manager needs to bulk-update records. An executive needs summary callouts at a glance. One component, many masters.

The Column Problem

Column management is where most teams give up. Users want to show/hide columns, reorder them, freeze key identifiers to the left, and resize columns to see truncated text. That's four separate interaction models that all have to coexist without conflicting. And each one has edge cases: what happens when a frozen column's content is longer than the visible viewport? What happens when the user resizes a column so narrow the header label is invisible?

The right answer is usually progressive disclosure: give users a column configurator they can reach when they need it, but don't surface all the controls by default. The table should work well out of the box, with sensible defaults and a clear path to customisation.

Sorting and Filtering: Two Different Jobs

Sorting and filtering are frequently conflated in both design and engineering, but they serve different mental models. Sorting is about sequence — the user wants to see the highest values first, or the most recent items at the top. Filtering is about scope — the user wants to narrow the dataset to a meaningful subset. Mixing the two in a single control creates confusion. Keep them visually and functionally distinct.

For filtering specifically, the choice between a filter panel and inline column filters depends on volume. If users are filtering by more than two or three dimensions simultaneously, a dedicated filter panel gives them better visibility into what's active. Inline filters are fine for quick single-column scoping.

Row Selection and Bulk Actions

Bulk actions are a trust signal. When a user selects 200 rows to reassign to a new owner, they are trusting that your table knows exactly which rows are selected, that the action is reversible, and that the confirmation step is clear about scope. Get any of these wrong and you damage trust in the entire product.

One consistently overlooked detail: what does 'select all' mean? Does it select the 20 rows visible on the current page, or all 2,400 rows matching the current filter? Both are valid answers depending on context, but the user has to know which one they're getting before they confirm the action — not after.

Performance and Perceived Performance

At scale, table performance matters more than almost any other UI component. A slow table breaks the core workflow of a power user who relies on it to do their job. Virtual scrolling helps render performance, but the perceived slowness of a filter operation that takes three seconds to return results is just as damaging as a genuinely slow DOM.

Design has a role here: skeleton loaders, optimistic UI, and clear progress indicators all reduce the perception of latency. But ultimately, if the data layer isn't fast enough, no amount of design polish will make a sluggish table feel good to use. Push for fast data, then design for the gaps.

The Takeaway

B2B data tables deserve the same design rigour as any flagship feature. They are the workbench where your most invested users spend the majority of their time. A well-designed table earns loyalty. A poorly designed one drives users to spreadsheets — or to a competitor.

Recommended for you

Privacy settings

We use cookies to help our site work and to understand how visitors use it. Some are essential for core functionality and security; others — such as analytics — are only used with your consent.