Blog
OAuth Callback Failures That Kill SDK Onboarding
Diagnose OAuth callback and JWT expiry failures during SDK onboarding, including Safari ITP, expired tokens, and how to capture callback context before evaluators churn.
2026-09-06 · 8 min read · AethelLayer
Auth is where evaluations die quietly
OAuth is the most common silent killer in SDK onboarding. The popup never returns under Safari ITP. The callback lands forty seconds after the JWT expired. The developer assumes your product is broken and leaves without filing an issue.
Dashboards may show a drop at /oauth/callback. They rarely preserve the exact timing, runtime, and developer note that make the root cause obvious.
Instrument the callback path
Put a probe on the web SDK and the callback endpoint. Capture error codes like JWT_EXPIRED_CALLBACK with the lag between issue and landing. Ask one clarifying question while the session is still open.
That combination turns a vague auth problem into a thread DX can close the same day.
Ship the fix where it belongs
Sometimes the fix is docs. Sometimes it is cookie partitioning guidance. Sometimes it is token lifetime. The point is to hear the failure while it is still on screen, then draft the GitHub issue you still approve.
Keep reading
Capture the failure before they leave
Capture the failure before they leave. Book early access or talk to sales, then install @aethellayer/sdk when you are onboarded.