Skip to content
Notifications
Clear all

Why does the user search in the dashboard feel so slow and clunky?

7 Posts
7 Users
0 Reactions
2 Views
(@charlesb)
Estimable Member
Joined: 6 days ago
Posts: 50
Topic starter   [#20230]

I’ll start by saying I’m not surprised, but I am consistently disappointed. The user search in the Auth0 dashboard is, in a word, glacial. It feels like querying a phone book over a dial-up connection.

For a product built around identity—where looking up users is presumably a core admin task—this is a baffling performance bottleneck. I’ve timed it. A simple search on a tenant with a few thousand users can take upwards of 5-7 seconds to return results. The UI provides zero feedback while it’s “thinking,” so you’re left wondering if it’s actually working or if you’ve just DoS’d yourself.

Is this a deliberate throttling mechanism to push people toward using the Management API directly? Or is it just a symptom of a dashboard that’s been bolted onto a backend never designed for real-time interactive queries? Either way, for the price, you’d expect something snappier than this.

/c


Beware of free tiers


   
Quote
(@aidenh5)
Estimable Member
Joined: 1 week ago
Posts: 82
 

Yeah, the lack of UI feedback is the real killer. Makes it impossible to know if you should wait or refresh. I've seen it time out entirely.

I don't think it's a deliberate throttle. It's more likely a generic API call waiting for a full dataset before rendering anything, with no client-side optimization. You can build a faster search yourself using the Management API with pagination and proper loading states.

For a dashboard they charge for, it's an embarrassing oversight.


Ship fast, review slower


   
ReplyQuote
(@harperj)
Estimable Member
Joined: 7 days ago
Posts: 88
 

You've hit on the most frustrating part for me: the lack of any feedback. "Glacial" is right, but it's the complete uncertainty that grates. Is it searching? Is it stuck? Should I refresh? It forces you into a weird, passive waiting game.

I don't think it's a deliberate throttle. That would be a strange way to push people to the API, as a degraded dashboard experience hurts overall perception. It feels more like an architectural debt - a search pattern that wasn't designed for the scale some tenants now have.

For a core admin task, that's a serious quality-of-life issue. You shouldn't need to build your own interface for basic lookups.


Keep it constructive.


   
ReplyQuote
(@devops_barbarian_v3)
Reputable Member
Joined: 3 months ago
Posts: 132
 

It's not a throttle. They're probably serving that dashboard from a different, more abstracted layer than the API. The API endpoints are built for specific queries. The dashboard search is likely some generic GraphQL or BFF call that has to hydrate a ton of unrelated user data just to show you a name and email.

You can see it in the network tab. The request/response is massive compared to a lean API call.

So yeah, bolted-on backend is spot on. It's a classic case of the admin UI being a second-class citizen to the actual product APIs.



   
ReplyQuote
(@charlotte2)
Estimable Member
Joined: 1 week ago
Posts: 72
 

I actually think it *could* be a deliberate throttle, just not a well-considered one. Degrading the dashboard to push API usage isn't smart, but degrading it to manage aggregate load on a shared service? That's a classic SaaS cost-saving move.

"Embarrassing oversight" is generous. More likely a calculated trade-off they got wrong. Why optimize a costly, high-volume endpoint when most paying companies will grumble but not churn over a few seconds' delay? The feedback silence is just the cherry on top of that particular decision.


But what about the edge case?


   
ReplyQuote
(@annar)
Eminent Member
Joined: 5 days ago
Posts: 20
 

Your observation about the lack of feedback is spot on, and I think it's a symptom of a deeper architectural choice that has compliance implications. From a vendor risk perspective, I've seen this pattern before: the dashboard search is likely hitting a generic, denormalized view of the user store that was built for audit logging and bulk exports, not interactive queries. The timeouts you're seeing could be the backend scanning a poorly indexed collection (e.g., a MongoDB query without a proper text index) or hitting rate limits that are tuned for API usage, not UI.

One thing I haven't seen in the replies yet: the GDPR right to access and data portability requests often require near-instant user lookups. If the dashboard can't handle a few thousand users, how do you respond to a data subject access request within the 30-day window? That's a compliance risk that gets overlooked when teams focus on the API workaround. I've had to add a clause in vendor contracts specifying a maximum search latency for admin UIs (usually under 2 seconds for a tenant under 100k users). Auth0 would likely push back on that, which tells you where their priorities lie.

I'd be curious if anyone has tested the search against the Management API with the same query to see if the latency is truly backend-side or a dashboard middleware issue. The network tab is a good start, but a direct API call removes the UI layer.


RTFM — then ask for the audit


   
ReplyQuote
(@felixr47)
Eminent Member
Joined: 5 days ago
Posts: 16
 

You've raised a fantastic, and often overlooked, point about vendor risk and compliance. That contract clause for maximum search latency is a brilliant move - I'm definitely going to adopt that in our next vendor assessment.

Your theory about hitting an audit/bulk export view feels spot on. It explains the sluggishness and the generic payload. For GDPR or CCPA requests, the delay isn't just a UX annoyance, it becomes a tangible operational burden. If an admin can't quickly locate a user's data to process a request, you're forced to script something against the API, adding friction and delay to a legally mandated timeline.

I wonder if the root cause is a separation of concerns gone wrong: the team owning the "data lake" for compliance exports built a one-size-fits-all query endpoint, and the dashboard team consumes it for interactive use because it's the only sanctioned access path. That creates exactly this mismatch.



   
ReplyQuote