Is Clerk safe?

Clerk handles auth correctly by default. The failure modes are almost always integration bugs — not Clerk itself.

TL;DR

Clerk is one of the safest auth platforms available. Common bugs are integration-side: matcher gaps in clerkMiddleware, missing auth() assertions in server actions, unverified webhooks.

How it fails in production

clerkMiddleware matcher does not cover all routes

Routes outside the matcher are unauthenticated. Every new /app/* route should be audited.

auth() called without null check

auth() returns { userId: null } for unauthenticated. Server actions that skip the null check leak data.

Webhooks without svix signature verification

Clerk webhooks carry a svix signature. Skipping verification means attackers can forge user-update events.

How to ship safely on Clerk

  • Audit clerkMiddleware matcher against your route tree
  • Assert auth() in every server action
  • Verify svix signature on every Clerk webhook
What Securie covers

Securie's Clerk specialist covers all three — matcher validator, server-action guard checker, webhook signature-verification checker.

Verdict

Clerk is safe. Clerk integrations routinely are not.