{"slug": "better-auth", "name": "Better Auth", "category": "security", "category_name": "Security and passwords", "description": "Open-source authentication and authorization framework for TypeScript applications.", "recommenders": 9, "commenters": 13, "warners": 1, "score": 7.869, "rising": -2.95, "first": "2025-11-13", "latest": "2026-08-29", "why": "HN commenters like Better Auth as an open-source replacement for services like Clerk, Auth0 and Supabase auth, citing its broad feature set, easy extensibility and strong TypeScript developer experience.", "why_is_quote": false, "has_verdict": true, "sentiment": {"recommend": 9, "neutral": 3, "compare": 0, "warn": 1}, "spark": [1, 0, 1, 1, 0, 0, 4, 0, 2, 0, 0, 0], "listed": true, "loved": ["Open-source alternative", "Feature breadth"], "caveat": "Code quality", "short_quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "icon": true, "domain": null, "github_repo": null, "official_url": "https://www.better-auth.com", "pricing": "open source", "aliases": ["Better Auth", "better-auth"], "verdict": [{"text": "HN commenters like Better Auth as an open-source replacement for services like Clerk, Auth0 and Supabase auth,", "cites": [{"id": 768719280, "item_id": 48044955, "url": "https://news.ycombinator.com/item?id=48044955", "by": "jakubriedl", "date": "2026-05-06", "stance": "recommend", "quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "excerpt": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone. It supports more things I need, it's more reliable, and much cheaper. The reason why it work for me is that it's finally a open-source solution that is on par or better with commercial. When I've selected Clerk originally the reason was that there wasn't open-source alternative, and I won't roll my o", "context": "", "use_case": "authentication", "switched_from": "Clerk", "story": "From Supabase to Clerk to Better Auth"}, {"id": 754473696, "item_id": 47154606, "url": "https://news.ycombinator.com/item?id=47154606", "by": "coreylane", "date": "2026-02-25", "stance": "recommend", "quote": "better-auth is amazing and made moving off supabase a lot less scary", "excerpt": "Cool project, I recently moved a project off supabase entirely, my thoughts: - better-auth is amazing and made moving off supabase a lot less scary for. auth is very sticky. - Is this offering an alternative to https://github.com/PostgREST/postgrest or a wrapper around it? - I tried to self-host supabase/realtime recently and couldn't even get it working locally, so i migrated to postgres LISTEN/NOTIFY, which doesn't", "context": "moved a project off Supabase", "use_case": "authentication", "switched_from": "Supabase", "story": "Show HN: Replacebase \u2013 library to migrate away from Supabase"}, {"id": 768635216, "item_id": 48039701, "url": "https://news.ycombinator.com/item?id=48039701", "by": "supermdguy", "date": "2026-05-06", "stance": "recommend", "quote": "Better auth is great! I love how it's way more hackable than using a something like Clerk.", "excerpt": "Better auth is great! I love how it's way more hackable than using a something like Clerk. We were able to add a plugin to allow auth via iframe postMessage (embedded in a CRM) and everything worked seamlessly.", "context": "", "use_case": "auth, custom plugin for iframe embedding in CRM", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}]}, {"text": " citing its broad feature set, easy extensibility and strong TypeScript developer experience.", "cites": [{"id": 781124608, "item_id": 48820288, "url": "https://news.ycombinator.com/item?id=48820288", "by": "vaishnavsm", "date": "2026-07-07", "stance": "recommend", "quote": "It's actually really powerful!", "excerpt": "Keycloak and Better Auth aren't as fundamentally different as you may think! Better auth supports authn/z, being an identity _source_, being an identity provider, being an OIDC/SSO provider (so others can login using better auth), rbac, SAML/SCIM, and a ton more. It's actually really powerful! Most folks found better auth as an alternative to next-auth/auth.js - but better auth does a lot more than those. (some of th", "context": "", "use_case": "authentication, OIDC/SSO, RBAC", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 768635216, "item_id": 48039701, "url": "https://news.ycombinator.com/item?id=48039701", "by": "supermdguy", "date": "2026-05-06", "stance": "recommend", "quote": "Better auth is great! I love how it's way more hackable than using a something like Clerk.", "excerpt": "Better auth is great! I love how it's way more hackable than using a something like Clerk. We were able to add a plugin to allow auth via iframe postMessage (embedded in a CRM) and everything worked seamlessly.", "context": "", "use_case": "auth, custom plugin for iframe embedding in CRM", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 734656416, "item_id": 45916026, "url": "https://news.ycombinator.com/item?id=45916026", "by": "larrywinch", "date": "2025-11-13", "stance": "recommend", "quote": "the developer experience is really great", "excerpt": "This looks like great stuff. In the TypeScript ecosystem, I'd probably take a look at Better Auth though, as the developer experience is really great!", "context": "", "use_case": "authentication in TypeScript", "switched_from": "", "story": "Kratos - Cloud native Auth0 open-source alternative (self-hosted)"}]}, {"text": " The most common caveat is maturity:", "cites": [{"id": 768632224, "item_id": 48039514, "url": "https://news.ycombinator.com/item?id=48039514", "by": "zuzululu", "date": "2026-05-06", "stance": "warn", "quote": "When I used it last year, I still found it lacking and it seemed to be run by one guy.", "excerpt": "what do you get from Better Auth btw? When I used it last year, I still found it lacking and it seemed to be run by one guy.", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 768830992, "item_id": 48051937, "url": "https://news.ycombinator.com/item?id=48051937", "by": "joekrill", "date": "2026-05-07", "stance": "recommend", "quote": "I actually use Better Auth, and I'm a huge fan despite those criticisms.", "excerpt": "> Better Auth checked a lot of boxes right out of the gate: high code quality, Maybe I have high standards, but I absolutely would not describe Better Auth as having \"high code quality\". It has certainly been improving, but when I first looked at this project it felt really rushed and thrown together, with little automated tests. There's was virtually no logging last I looked, so there's little options to monitor wha", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}]}, {"text": " commenters report rushed code with few tests and little logging, plus breaking changes in patch versions.", "cites": [{"id": 768830992, "item_id": 48051937, "url": "https://news.ycombinator.com/item?id=48051937", "by": "joekrill", "date": "2026-05-07", "stance": "recommend", "quote": "I actually use Better Auth, and I'm a huge fan despite those criticisms.", "excerpt": "> Better Auth checked a lot of boxes right out of the gate: high code quality, Maybe I have high standards, but I absolutely would not describe Better Auth as having \"high code quality\". It has certainly been improving, but when I first looked at this project it felt really rushed and thrown together, with little automated tests. There's was virtually no logging last I looked, so there's little options to monitor wha", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 781120048, "item_id": 48820003, "url": "https://news.ycombinator.com/item?id=48820003", "by": "magnio", "date": "2026-07-07", "stance": "neutral", "quote": "I used Better Auth for my mobile app backend. It works okayish.", "excerpt": "I used Better Auth for my mobile app backend. It works okayish. My biggest complaints are the OpenAPI specification gets little care, as it mainly caters for JS frontend, and breaking changes in patch version are more common than most packages.", "context": "", "use_case": "mobile app backend auth", "switched_from": "", "story": "Better Auth is joining Vercel"}]}], "praise": [{"label": "Open-source alternative", "summary": "Commenters switched to it from Clerk and Supabase and see it as on par with or better than commercial auth services.", "quotes": [{"id": 768719280, "item_id": 48044955, "url": "https://news.ycombinator.com/item?id=48044955", "by": "jakubriedl", "date": "2026-05-06", "stance": "recommend", "quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "excerpt": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone. It supports more things I need, it's more reliable, and much cheaper. The reason why it work for me is that it's finally a open-source solution that is on par or better with commercial. When I've selected Clerk originally the reason was that there wasn't open-source alternative, and I won't roll my o", "context": "", "use_case": "authentication", "switched_from": "Clerk", "story": "From Supabase to Clerk to Better Auth"}, {"id": 754473696, "item_id": 47154606, "url": "https://news.ycombinator.com/item?id=47154606", "by": "coreylane", "date": "2026-02-25", "stance": "recommend", "quote": "better-auth is amazing and made moving off supabase a lot less scary", "excerpt": "Cool project, I recently moved a project off supabase entirely, my thoughts: - better-auth is amazing and made moving off supabase a lot less scary for. auth is very sticky. - Is this offering an alternative to https://github.com/PostgREST/postgrest or a wrapper around it? - I tried to self-host supabase/realtime recently and couldn't even get it working locally, so i migrated to postgres LISTEN/NOTIFY, which doesn't", "context": "moved a project off Supabase", "use_case": "authentication", "switched_from": "Supabase", "story": "Show HN: Replacebase \u2013 library to migrate away from Supabase"}, {"id": 768635216, "item_id": 48039701, "url": "https://news.ycombinator.com/item?id=48039701", "by": "supermdguy", "date": "2026-05-06", "stance": "recommend", "quote": "Better auth is great! I love how it's way more hackable than using a something like Clerk.", "excerpt": "Better auth is great! I love how it's way more hackable than using a something like Clerk. We were able to add a plugin to allow auth via iframe postMessage (embedded in a CRM) and everything worked seamlessly.", "context": "", "use_case": "auth, custom plugin for iframe embedding in CRM", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}]}, {"label": "Feature breadth", "summary": "It covers authn/z, OIDC/SSO provider, RBAC, SAML/SCIM and more, going beyond next-auth/auth.js.", "quotes": [{"id": 781124608, "item_id": 48820288, "url": "https://news.ycombinator.com/item?id=48820288", "by": "vaishnavsm", "date": "2026-07-07", "stance": "recommend", "quote": "It's actually really powerful!", "excerpt": "Keycloak and Better Auth aren't as fundamentally different as you may think! Better auth supports authn/z, being an identity _source_, being an identity provider, being an OIDC/SSO provider (so others can login using better auth), rbac, SAML/SCIM, and a ton more. It's actually really powerful! Most folks found better auth as an alternative to next-auth/auth.js - but better auth does a lot more than those. (some of th", "context": "", "use_case": "authentication, OIDC/SSO, RBAC", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 768719280, "item_id": 48044955, "url": "https://news.ycombinator.com/item?id=48044955", "by": "jakubriedl", "date": "2026-05-06", "stance": "recommend", "quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "excerpt": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone. It supports more things I need, it's more reliable, and much cheaper. The reason why it work for me is that it's finally a open-source solution that is on par or better with commercial. When I've selected Clerk originally the reason was that there wasn't open-source alternative, and I won't roll my o", "context": "", "use_case": "authentication", "switched_from": "Clerk", "story": "From Supabase to Clerk to Better Auth"}]}, {"label": "Hackable plugins", "summary": "Its plugin system let one team add iframe postMessage auth, and others build their own auth layers on top of it.", "quotes": [{"id": 768635216, "item_id": 48039701, "url": "https://news.ycombinator.com/item?id=48039701", "by": "supermdguy", "date": "2026-05-06", "stance": "recommend", "quote": "Better auth is great! I love how it's way more hackable than using a something like Clerk.", "excerpt": "Better auth is great! I love how it's way more hackable than using a something like Clerk. We were able to add a plugin to allow auth via iframe postMessage (embedded in a CRM) and everything worked seamlessly.", "context": "", "use_case": "auth, custom plugin for iframe embedding in CRM", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 791862692, "item_id": 49491418, "url": "https://news.ycombinator.com/item?id=49491418", "by": "scrollaway", "date": "2026-08-29", "stance": "neutral", "quote": "Auth is nk-auth, built on top of betterauth", "excerpt": "Scratching my head a little bit here, I'm not sure how this differs from NextJS (or Vite) with a layer of drizzle & better-auth. Not that that layer isn't important. We ended up building something like this at Ingram, nextkit: https://github.com/ingram-technologies/nextkit - but we distribute it as a set of micro libraries that work well together rather than a unified framework. (Auth is nk-auth, built on top of bett", "context": "", "use_case": "authentication", "switched_from": "", "story": "Show HN: Typebase \u2013 A single-folder back end you write in TypeScript"}]}, {"label": "Developer experience", "summary": "Commenters praise its developer experience in the TypeScript ecosystem and use it across all their projects.", "quotes": [{"id": 734656416, "item_id": 45916026, "url": "https://news.ycombinator.com/item?id=45916026", "by": "larrywinch", "date": "2025-11-13", "stance": "recommend", "quote": "the developer experience is really great", "excerpt": "This looks like great stuff. In the TypeScript ecosystem, I'd probably take a look at Better Auth though, as the developer experience is really great!", "context": "", "use_case": "authentication in TypeScript", "switched_from": "", "story": "Kratos - Cloud native Auth0 open-source alternative (self-hosted)"}, {"id": 781126048, "item_id": 48820378, "url": "https://news.ycombinator.com/item?id=48820378", "by": "RichardChu", "date": "2026-07-07", "stance": "recommend", "quote": "Better Auth is great, I use it for all my projects.", "excerpt": "Better Auth is great, I use it for all my projects. Congrats to the team!", "context": "", "use_case": "authentication in projects", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 744354112, "item_id": 46522132, "url": "https://news.ycombinator.com/item?id=46522132", "by": "victorymakes", "date": "2026-01-06", "stance": "recommend", "quote": "Better Auth is an excellent authentication library\u2014we use it extensively for auth in LaunchSaaS.", "excerpt": "When building LaunchSaaS, I faced a critical decision: use Better Auth's built-in payment plugins or build my own payment system. Better Auth is an excellent authentication library\u2014we use it extensively for auth in LaunchSaaS. But when it came to payments, I chose to build custom. The post shows why that decision paid off, and how you can determine the right choice for your project.", "context": "building LaunchSaaS", "use_case": "authentication", "switched_from": "", "story": "I Built Payment Integration Instead of Using Better Auth's Payment Plugin"}]}, {"label": "Lower cost", "summary": "One commenter who switched from Clerk found it much cheaper and more reliable.", "quotes": [{"id": 768719280, "item_id": 48044955, "url": "https://news.ycombinator.com/item?id=48044955", "by": "jakubriedl", "date": "2026-05-06", "stance": "recommend", "quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "excerpt": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone. It supports more things I need, it's more reliable, and much cheaper. The reason why it work for me is that it's finally a open-source solution that is on par or better with commercial. When I've selected Clerk originally the reason was that there wasn't open-source alternative, and I won't roll my o", "context": "", "use_case": "authentication", "switched_from": "Clerk", "story": "From Supabase to Clerk to Better Auth"}]}], "caveats": [{"label": "Code quality", "summary": "One user found the early code rushed, with few automated tests and almost no logging.", "quotes": [{"id": 768830992, "item_id": 48051937, "url": "https://news.ycombinator.com/item?id=48051937", "by": "joekrill", "date": "2026-05-07", "stance": "recommend", "quote": "I actually use Better Auth, and I'm a huge fan despite those criticisms.", "excerpt": "> Better Auth checked a lot of boxes right out of the gate: high code quality, Maybe I have high standards, but I absolutely would not describe Better Auth as having \"high code quality\". It has certainly been improving, but when I first looked at this project it felt really rushed and thrown together, with little automated tests. There's was virtually no logging last I looked, so there's little options to monitor wha", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}]}, {"label": "Breaking changes", "summary": "Breaking changes in patch versions were reported as more common than in most packages.", "quotes": [{"id": 781120048, "item_id": 48820003, "url": "https://news.ycombinator.com/item?id=48820003", "by": "magnio", "date": "2026-07-07", "stance": "neutral", "quote": "I used Better Auth for my mobile app backend. It works okayish.", "excerpt": "I used Better Auth for my mobile app backend. It works okayish. My biggest complaints are the OpenAPI specification gets little care, as it mainly caters for JS frontend, and breaking changes in patch version are more common than most packages.", "context": "", "use_case": "mobile app backend auth", "switched_from": "", "story": "Better Auth is joining Vercel"}]}, {"label": "Non-JS clients", "summary": "The OpenAPI spec gets little care because the project mainly caters to JS frontends, which makes it only okay for a mobile backend.", "quotes": [{"id": 781120048, "item_id": 48820003, "url": "https://news.ycombinator.com/item?id=48820003", "by": "magnio", "date": "2026-07-07", "stance": "neutral", "quote": "I used Better Auth for my mobile app backend. It works okayish.", "excerpt": "I used Better Auth for my mobile app backend. It works okayish. My biggest complaints are the OpenAPI specification gets little care, as it mainly caters for JS frontend, and breaking changes in patch version are more common than most packages.", "context": "", "use_case": "mobile app backend auth", "switched_from": "", "story": "Better Auth is joining Vercel"}]}, {"label": "Gated features", "summary": "Some features are enterprise-only, and audit logs require the managed service.", "quotes": [{"id": 781124608, "item_id": 48820288, "url": "https://news.ycombinator.com/item?id=48820288", "by": "vaishnavsm", "date": "2026-07-07", "stance": "recommend", "quote": "It's actually really powerful!", "excerpt": "Keycloak and Better Auth aren't as fundamentally different as you may think! Better auth supports authn/z, being an identity _source_, being an identity provider, being an OIDC/SSO provider (so others can login using better auth), rbac, SAML/SCIM, and a ton more. It's actually really powerful! Most folks found better auth as an alternative to next-auth/auth.js - but better auth does a lot more than those. (some of th", "context": "", "use_case": "authentication, OIDC/SSO, RBAC", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 768830992, "item_id": 48051937, "url": "https://news.ycombinator.com/item?id=48051937", "by": "joekrill", "date": "2026-05-07", "stance": "recommend", "quote": "I actually use Better Auth, and I'm a huge fan despite those criticisms.", "excerpt": "> Better Auth checked a lot of boxes right out of the gate: high code quality, Maybe I have high standards, but I absolutely would not describe Better Auth as having \"high code quality\". It has certainly been improving, but when I first looked at this project it felt really rushed and thrown together, with little automated tests. There's was virtually no logging last I looked, so there's little options to monitor wha", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}]}, {"label": "Project maturity", "summary": "Users said it felt lacking and appeared to be run by one person, and one user is looking for backup plans over its direction.", "quotes": [{"id": 768632224, "item_id": 48039514, "url": "https://news.ycombinator.com/item?id=48039514", "by": "zuzululu", "date": "2026-05-06", "stance": "warn", "quote": "When I used it last year, I still found it lacking and it seemed to be run by one guy.", "excerpt": "what do you get from Better Auth btw? When I used it last year, I still found it lacking and it seemed to be run by one guy.", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 781117936, "item_id": 48819871, "url": "https://news.ycombinator.com/item?id=48819871", "by": "agrippanux", "date": "2026-07-07", "stance": "neutral", "quote": "I just implemented Better Auth for our new product - time to start looking for backup plans.", "excerpt": "Uggggg I just implemented Better Auth for our new product - time to start looking for backup plans. I used to be a huge Vercel fanboy but everything they have done in the last few years turns into a complicated mess.", "context": "", "use_case": "product authentication", "switched_from": "", "story": "Better Auth is joining Vercel"}]}], "who": [{"by": "coreylane", "context": "moved a project off Supabase", "url": "https://news.ycombinator.com/item?id=47154606", "date": "2026-02-25"}, {"by": "victorymakes", "context": "building LaunchSaaS", "url": "https://news.ycombinator.com/item?id=46522132", "date": "2026-01-06"}], "tags": ["for TypeScript projects", "for migrating off Clerk", "for migrating off Supabase", "for SaaS apps", "for new projects"], "use_cases": ["authentication", "authentication in projects", "authentication, oidc/sso, rbac", "mobile app backend auth", "product authentication", "authentication for new projects"], "compared": [{"slug": "clerk", "name": "Clerk", "co": 2, "switched_from": 1, "switched_to": 0}, {"slug": "supabase", "name": "Supabase", "co": 1, "switched_from": 1, "switched_to": 0}, {"slug": "ory-kratos", "name": "Ory Kratos", "co": 2, "switched_from": 0, "switched_to": 0}, {"slug": "keycloak", "name": "Keycloak", "co": 2, "switched_from": 0, "switched_to": 0}], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=48038827", "title": "From Supabase to Clerk to Better Auth", "mentions": 5}, {"url": "https://news.ycombinator.com/item?id=48819512", "title": "Better Auth is joining Vercel", "mentions": 4}, {"url": "https://news.ycombinator.com/item?id=49447178", "title": "Show HN: Typebase \u2013 A single-folder back end you write in TypeScript", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47154281", "title": "Show HN: Replacebase \u2013 library to migrate away from Supabase", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=46522131", "title": "I Built Payment Integration Instead of Using Better Auth's Payment Plugin", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=45915114", "title": "Kratos - Cloud native Auth0 open-source alternative (self-hosted)", "mentions": 1}], "sentiment_by_month": {"2025-11": {"recommend": 1}, "2025-12": {}, "2026-01": {"recommend": 1}, "2026-02": {"recommend": 1}, "2026-03": {}, "2026-04": {}, "2026-05": {"warn": 1, "recommend": 4}, "2026-06": {}, "2026-07": {"neutral": 2, "recommend": 2}, "2026-08": {"neutral": 1}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 791862692, "item_id": 49491418, "url": "https://news.ycombinator.com/item?id=49491418", "by": "scrollaway", "date": "2026-08-29", "stance": "neutral", "quote": "Auth is nk-auth, built on top of betterauth", "excerpt": "Scratching my head a little bit here, I'm not sure how this differs from NextJS (or Vite) with a layer of drizzle & better-auth. Not that that layer isn't important. We ended up building something like this at Ingram, nextkit: https://github.com/ingram-technologies/nextkit - but we distribute it as a set of micro libraries that work well together rather than a unified framework. (Auth is nk-auth, built on top of bett", "context": "", "use_case": "authentication", "switched_from": "", "story": "Show HN: Typebase \u2013 A single-folder back end you write in TypeScript"}, {"id": 781126048, "item_id": 48820378, "url": "https://news.ycombinator.com/item?id=48820378", "by": "RichardChu", "date": "2026-07-07", "stance": "recommend", "quote": "Better Auth is great, I use it for all my projects.", "excerpt": "Better Auth is great, I use it for all my projects. Congrats to the team!", "context": "", "use_case": "authentication in projects", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 781124608, "item_id": 48820288, "url": "https://news.ycombinator.com/item?id=48820288", "by": "vaishnavsm", "date": "2026-07-07", "stance": "recommend", "quote": "It's actually really powerful!", "excerpt": "Keycloak and Better Auth aren't as fundamentally different as you may think! Better auth supports authn/z, being an identity _source_, being an identity provider, being an OIDC/SSO provider (so others can login using better auth), rbac, SAML/SCIM, and a ton more. It's actually really powerful! Most folks found better auth as an alternative to next-auth/auth.js - but better auth does a lot more than those. (some of th", "context": "", "use_case": "authentication, OIDC/SSO, RBAC", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 781120048, "item_id": 48820003, "url": "https://news.ycombinator.com/item?id=48820003", "by": "magnio", "date": "2026-07-07", "stance": "neutral", "quote": "I used Better Auth for my mobile app backend. It works okayish.", "excerpt": "I used Better Auth for my mobile app backend. It works okayish. My biggest complaints are the OpenAPI specification gets little care, as it mainly caters for JS frontend, and breaking changes in patch version are more common than most packages.", "context": "", "use_case": "mobile app backend auth", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 781117936, "item_id": 48819871, "url": "https://news.ycombinator.com/item?id=48819871", "by": "agrippanux", "date": "2026-07-07", "stance": "neutral", "quote": "I just implemented Better Auth for our new product - time to start looking for backup plans.", "excerpt": "Uggggg I just implemented Better Auth for our new product - time to start looking for backup plans. I used to be a huge Vercel fanboy but everything they have done in the last few years turns into a complicated mess.", "context": "", "use_case": "product authentication", "switched_from": "", "story": "Better Auth is joining Vercel"}, {"id": 768830992, "item_id": 48051937, "url": "https://news.ycombinator.com/item?id=48051937", "by": "joekrill", "date": "2026-05-07", "stance": "recommend", "quote": "I actually use Better Auth, and I'm a huge fan despite those criticisms.", "excerpt": "> Better Auth checked a lot of boxes right out of the gate: high code quality, Maybe I have high standards, but I absolutely would not describe Better Auth as having \"high code quality\". It has certainly been improving, but when I first looked at this project it felt really rushed and thrown together, with little automated tests. There's was virtually no logging last I looked, so there's little options to monitor wha", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 768719280, "item_id": 48044955, "url": "https://news.ycombinator.com/item?id=48044955", "by": "jakubriedl", "date": "2026-05-06", "stance": "recommend", "quote": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone.", "excerpt": "I've recently switched from Clerk to BetterAuth as well and it's really good and definitely would recommend to anyone. It supports more things I need, it's more reliable, and much cheaper. The reason why it work for me is that it's finally a open-source solution that is on par or better with commercial. When I've selected Clerk originally the reason was that there wasn't open-source alternative, and I won't roll my o", "context": "", "use_case": "authentication", "switched_from": "Clerk", "story": "From Supabase to Clerk to Better Auth"}, {"id": 768664482, "item_id": 48041530, "url": "https://news.ycombinator.com/item?id=48041530", "by": "oncensher", "date": "2026-05-06", "stance": "recommend", "quote": "But inclined to BetterAuth for new projects.", "excerpt": "Had a similar journey recently. Started with Stack Auth, found it unusable in production due to extremely hard rate limits and bad performance even when not rate limited. Switched to WorkOS AuthKit, which works much better and supports useful enterprise features. But inclined to BetterAuth for new projects. - Syncing external auth provider state with your user state is a bug center. It helps to keep as little state a", "context": "", "use_case": "authentication for new projects", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 768635216, "item_id": 48039701, "url": "https://news.ycombinator.com/item?id=48039701", "by": "supermdguy", "date": "2026-05-06", "stance": "recommend", "quote": "Better auth is great! I love how it's way more hackable than using a something like Clerk.", "excerpt": "Better auth is great! I love how it's way more hackable than using a something like Clerk. We were able to add a plugin to allow auth via iframe postMessage (embedded in a CRM) and everything worked seamlessly.", "context": "", "use_case": "auth, custom plugin for iframe embedding in CRM", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 768632224, "item_id": 48039514, "url": "https://news.ycombinator.com/item?id=48039514", "by": "zuzululu", "date": "2026-05-06", "stance": "warn", "quote": "When I used it last year, I still found it lacking and it seemed to be run by one guy.", "excerpt": "what do you get from Better Auth btw? When I used it last year, I still found it lacking and it seemed to be run by one guy.", "context": "", "use_case": "authentication", "switched_from": "", "story": "From Supabase to Clerk to Better Auth"}, {"id": 754473696, "item_id": 47154606, "url": "https://news.ycombinator.com/item?id=47154606", "by": "coreylane", "date": "2026-02-25", "stance": "recommend", "quote": "better-auth is amazing and made moving off supabase a lot less scary", "excerpt": "Cool project, I recently moved a project off supabase entirely, my thoughts: - better-auth is amazing and made moving off supabase a lot less scary for. auth is very sticky. - Is this offering an alternative to https://github.com/PostgREST/postgrest or a wrapper around it? - I tried to self-host supabase/realtime recently and couldn't even get it working locally, so i migrated to postgres LISTEN/NOTIFY, which doesn't", "context": "moved a project off Supabase", "use_case": "authentication", "switched_from": "Supabase", "story": "Show HN: Replacebase \u2013 library to migrate away from Supabase"}, {"id": 744354112, "item_id": 46522132, "url": "https://news.ycombinator.com/item?id=46522132", "by": "victorymakes", "date": "2026-01-06", "stance": "recommend", "quote": "Better Auth is an excellent authentication library\u2014we use it extensively for auth in LaunchSaaS.", "excerpt": "When building LaunchSaaS, I faced a critical decision: use Better Auth's built-in payment plugins or build my own payment system. Better Auth is an excellent authentication library\u2014we use it extensively for auth in LaunchSaaS. But when it came to payments, I chose to build custom. The post shows why that decision paid off, and how you can determine the right choice for your project.", "context": "building LaunchSaaS", "use_case": "authentication", "switched_from": "", "story": "I Built Payment Integration Instead of Using Better Auth's Payment Plugin"}, {"id": 734656416, "item_id": 45916026, "url": "https://news.ycombinator.com/item?id=45916026", "by": "larrywinch", "date": "2025-11-13", "stance": "recommend", "quote": "the developer experience is really great", "excerpt": "This looks like great stuff. In the TypeScript ecosystem, I'd probably take a look at Better Auth though, as the developer experience is really great!", "context": "", "use_case": "authentication in TypeScript", "switched_from": "", "story": "Kratos - Cloud native Auth0 open-source alternative (self-hosted)"}]}