Better Auth vs Clerk sprowadza się do jednego pytania: gdzie żyją Państwa użytkownicy i sesje? Clerk trzyma je w swojej hostowanej usłudze. Better Auth zapisuje je w Państwa własnej bazie danych, jako zwykłe tabele obok reszty aplikacji.
W każdej nowej aplikacji przeszliśmy z NextAuth na Better Auth i nigdy nie wybraliśmy Clerka. Najpierw uczciwe zastrzeżenie: nie używaliśmy Clerka na produkcji. To więc nie jest benchmark. To wyjaśnienie, dlaczego go nie wybraliśmy, z konfiguracjami, których naprawdę używamy.
Jaka jest różnica między Better Auth a Clerkiem?
Better Auth to biblioteka. Opisuje się jako "a framework-agnostic, universal authentication and authorization framework for TypeScript" (dokumentacja Better Auth, stan na 24.10.2026). Ma licencję MIT. Clerk to hostowana usługa z gotowymi komponentami logowania i panelem użytkowników.
Better Auth
Clerk
Czym jest
Biblioteka TypeScript w Państwa repozytorium
Hostowana usługa uwierzytelniania z komponentami UI
Gdzie żyją użytkownicy i sesje
Tabele w Państwa bazie danych
Infrastruktura Clerka
Cena
MIT, płacą Państwo za własną bazę danych i e-mail
Darmowo do 50 000 aktywnych użytkowników miesięcznie na aplikację, potem płatnie (cennik, stan na 24.10.2026)
Interfejs logowania
Budują go Państwo
Gotowe komponenty
Poprawki bezpieczeństwa
Państwo aktualizują pakiet i wdrażają
Wydaje je Clerk
E-maile weryfikacyjne i magic linki
Państwa usługa e-mail
Wysyła je Clerk
Odejście
Nie ma od czego odchodzić, to Państwa schemat
Eksport użytkowników z zahashowanymi hasłami, potem przepięcie UI i sprawdzania sesji
O wyborze zdecydowały u nas wiersz drugi i trzeci. Nasi klienci są właścicielami kodu, danych i infrastruktury od pierwszego dnia. Tabela użytkowników na cudzych serwerach, rozliczana za użytkownika, do tego nie pasuje.
Dlaczego przeszliśmy z NextAuth na Better Auth?
Nasze starsze aplikacje klientów działają na NextAuth v4 z adapterem Prisma. Nadal działają i ich nie ruszamy. Działającego uwierzytelniania nie przepisujemy na potrzeby artykułu.
Przy nowych aplikacjach decyzja stała się prostsza we wrześniu 2025 roku. Auth.js, projekt wcześniej nazywany NextAuth.js, przeszedł pod zespół Better Auth. Ich ogłoszenie mówi to wprost:
We strongly recommend new projects to start with Better Auth unless there are some very specific feature gaps.
To jest różnica w praktyce. Rekord utworzony przez użytkownika to klucz obcy do user.id w tej samej bazie danych. Raport „kto co zrobił” to jeden JOIN w SQL, a nie wywołanie zewnętrznego API plus zadanie synchronizacji.
Jak uwierzytelnianie staje się częścią Państwa własnego kodu?
Nasza wewnętrzna aplikacja cockpit pokazuje, jak daleko to sięga. Zarejestrować się może tylko krótka lista osób, wszystkie przez GitHub. Żadne ustawienie u dostawcy uwierzytelniania tego nie robi. To kilka linii w hooku bazy danych:
Osoba loguje się przez GitHub. Aplikacja prosi o dostęp do repozytoriów, bo cockpit czyta issues i pull requesty.
02
Hook działa przed zapisem
databaseHooks.user.create.before dostaje nowego użytkownika, zanim zostanie zapisany.
03
Nie ma go na liście: nie ma użytkownika
Zwrócenie false zatrzymuje zapis. Nie ma wiersza użytkownika ani sesji.
04
Jest na liście: wiersz sesji
Użytkownik i sesja trafiają do własnej bazy D1 aplikacji, czytelnej w dowolnym kliencie SQL.
Lista dozwolonych adresów to zmienna środowiskowa. Jej zmiana to wdrożenie, sprawdzane jak każda inna zmiana. Przy hostowanej usłudze ta sama reguła żyłaby w panelu albo w webhooku poza repozytorium.
Których pluginów Better Auth używamy na produkcji?
Każdy plugin to kod w repozytorium, więc listę łatwo sprawdzić:
Nasz szablon startowy:tanstackStartCookies i plugin płatności Polar (checkout i portal klienta, klient tworzony przy rejestracji). Polar jest dodawany tylko wtedy, gdy istnieje token.
Aplikacja webowa klienta: Better Auth w Payload CMS, z admin, organization, twoFactor, emailOTP, magicLink, multiSession i pluginem passkey.
Marketplace internetowy klienta: osobna usługa uwierzytelniania na MongoDB z magicLink i oidcProvider. Pozostałe aplikacje marketplace'u logują się przez nią jak przez każdego dostawcę OpenID Connect.
Trzy bazy danych, trzy konfiguracje, jedna biblioteka. To cenimy najbardziej: ta sama biblioteka pasuje do SQLite na edge'u, Postgresa za CMS-em i MongoDB w osobnej usłudze.
Kiedy Clerk jest lepszym wyborem?
Clerk ma sens, gdy chcą Państwo mieć logowanie gotowe w tym tygodniu, a nikt w zespole nie powinien utrzymywać kodu uwierzytelniania. Gotowe komponenty oszczędzają ekrany. Clerk wysyła e-maile i łata usługę. Do prototypu darmowy plan jest hojny: 50 000 aktywnych użytkowników miesięcznie na aplikację, Pro za 25 USD miesięcznie i 0,02 USD za użytkownika od 50 001 do 100 000 (cennik Clerka, stan na 24.10.2026).
Uzależnienie jest mniejsze, niż się wydaje. Clerk pozwala administratorom wyeksportować użytkowników, łącznie z zahashowanymi hasłami, jako CSV (dokumentacja Clerka, stan na 24.10.2026). Dane nie są zakładnikiem. Pracy wymaga wszystko, co jest do nich podpięte: interfejs logowania, sprawdzanie sesji na serwerze i dane użytkowników skopiowane do Państwa własnych tabel.
Jeszcze jeden fakt do rozważenia. Better Auth dołączył do Vercela 7 lipca 2026 roku. Ich wpis mówi: "Vercel shares our commitment to keeping auth open source, framework and platform agnostic." (blog Better Auth). Licencja MIT pozostaje taka, jaka jest. Odnotowujemy to tak, jak każdą zmianę właściciela zależności, na której polegamy.
Co Państwo biorą na siebie, gdy uwierzytelnianie jest Państwa?
Własne uwierzytelnianie nie jest wolne od pracy. Praca przechodzi na Państwa zespół. Zanim wybiorą Państwo Better Auth, proszę przejść tę listę:
Ostatni punkt to najtańsze ubezpieczenie. Nasz szablon startowy uruchamia testy Playwright dokładnie w tym celu: formularz logowania się wyświetla, rejestracja działa, a panel bez sesji przekierowuje do logowania.
Potrzebują Państwo uwierzytelniania, które zostaje w Państwa bazie danych?
Budujemy aplikacje webowe, w których użytkownicy, sesje i uprawnienia żyją we własnej bazie danych klienta, w ramach tworzenia aplikacji webowych na zamówienie. Kod, dane i infrastruktura należą do klienta od pierwszego dnia. Większość naszego kodu pisze AI. Senior sprawdza każdą zmianę i odpowiada za to, co działa na produkcji. Od 2023 roku dostarczyliśmy ponad 15 projektów produkcyjnych.
Odezwiemy się w ciągu dwóch dni roboczych z kilkoma pytaniami o Państwa pracę. Potem ustalimy, co zrobimy najpierw.
Better Auth to otwartoźródłowa biblioteka TypeScript, która zapisuje użytkowników i sesje w Państwa własnej bazie danych. Clerk to hostowana usługa, która przechowuje je za Państwa i daje gotowy interfejs logowania. Wybór jest między kontrolą i brakiem rachunku za użytkownika a mniejszą ilością własnego kodu do utrzymania.
Czy Better Auth jest darmowy?
Tak. Better Auth ma licencję MIT. Płacą Państwo za to, na czym działa: bazę danych, hosting i usługę e-mail, która wysyła linki weryfikacyjne i magic linki.
Ile kosztuje Clerk?
Według stanu na 24.10.2026 plan Hobby w Clerku jest darmowy z limitem 50 000 aktywnych użytkowników miesięcznie na aplikację, Pro kosztuje 25 USD miesięcznie (20 USD przy płatności rocznej), a użytkownicy od 50 001 do 100 000 kosztują po 0,02 USD miesięcznie. Aktualne liczby są na clerk.com/pricing.
Czy przejść z NextAuth na Better Auth?
W nowych projektach tak: Auth.js utrzymuje teraz zespół Better Auth i to on zaleca Better Auth do nowych prac. Działającej aplikacji na NextAuth nie migrujemy dla samej migracji. Zmieniamy, gdy aplikacja potrzebuje funkcji, której NextAuth nie ma.
Czy można później odejść od Clerka?
Tak. Clerk pozwala administratorom wyeksportować użytkowników, łącznie z zahashowanymi hasłami, jako CSV z panelu. Pracy wymaga reszta: interfejs logowania, sprawdzanie sesji i dane użytkowników zsynchronizowane do Państwa własnych tabel.
Zapytaj AI o ten artykuł
AI przy odpowiedzi wykorzysta też nasze inne artykuły i doświadczenia z prawdziwych projektów.
Refaktoryzacja, gdy kod robi właściwą rzecz źle. Przepisanie, gdy robi niewłaściwą rzecz albo kod nie należy do Państwa. Tabela decyzyjna dla CTO i sposób, by zrobić to bez zatrzymywania roadmapy.
Dług techniczny zmierzą Państwo na podstawie historii git i błędów, bez drogiego narzędzia. Najpierw warto naprawić kod, który zmienia się najczęściej i blokuje roadmapę, a nie ten najbrzydszy. Poradnik dla CTO.
Body leasing daje godziny programisty, którymi zarządzają Państwo sami. Senior w zespole daje zrealizowane zadania i zespół, który uczy się pracy z AI. Porównanie z outsourcingiem i rekrutacją, dla CTO.