# Najlepsze narzędzia e-mail dla Supabase: Auth, zdarzenia i cykl życia

Kanoniczny adres URL: https://brew.new/pl/blog/best-email-tools-for-supabase-auth-emails-product-events-and-lifecycle-campaigns
Autor: Thomas Park
Opublikowano: 2026-09-19
Zaktualizowano: 2026-09-29

To porównanie publikuje Brew. Dokumentację produktów, do której prowadzą linki, przeanalizowaliśmy 28 września 2026 r. To porównanie dokumentacji, a nie deklaracja, że każdą platformę przetestowaliśmy w praktyce. Aktualne limity planów sprawdź na stronie z cennikiem danego dostawcy.

Wypuszczasz aplikację na Supabase i rejestrują się pierwsi użytkownicy spoza Twojego zespołu. Ich e-maile z potwierdzeniem wciąż idą przez domyślnego nadawcę. Ten dostarcza wiadomości tylko na wcześniej autoryzowane adresy, więc żaden z nowych użytkowników niczego nie dostaje. Zaplanowany e-mail powitalny to wciąż tylko notatka na Twojej liście zadań.

Aplikacja na Supabase wysyła e-maile z trzech różnych powodów. E-maile uwierzytelniające to m.in. potwierdzenie rejestracji, magiczne linki i resety haseł. E-maile o zdarzeniach w produkcie wychodzą, gdy coś dzieje się w bazie danych. Kampanie cyklu życia obejmują onboarding, przypomnienia i e-maile odzyskujące klientów. Jedno narzędzie może obsłużyć więcej niż jeden z tych rodzajów, ale Supabase zaleca oddzielanie e-maili uwierzytelniających od marketingowych.

Ten poradnik porządkuje Resend, Loops, Sequenzy i Brew według tego, które z tych zadań każde z nich opisuje w dokumentacji.

## Najważniejsze wnioski

- Wbudowana usługa e-mail w Supabase służy do testów. Wysyła tylko na wcześniej autoryzowane adresy i ma niski limit. E-maile uwierzytelniające w środowisku produkcyjnym wymagają własnego serwera SMTP.
- W przypadku e-maili uwierzytelniających Resend, Loops i Sequenzy opisują w dokumentacji konfigurację SMTP dla Supabase. Brew takiej konfiguracji nie opisuje.
- W przypadku zdarzeń w produkcie i e-maili cyklu życia Brew nasłuchuje zmian w `auth.users` i emituje zdarzenia takie jak `auth.user.email_confirmed`. Sequenzy synchronizuje wiersze z wybranej przez Ciebie tabeli.
- Supabase zaleca osobne usługi i domeny dla e-maili uwierzytelniających i marketingowych.

## Trzy zadania, trzy rodzaje narzędzi

| Zadanie | Co jest potrzebne | Narzędzia, które to opisują |
| --- | --- | --- |
| E-maile uwierzytelniające | Serwer SMTP lub hook uwierzytelniania (auth hook), który wywołuje Supabase Auth | Resend, Loops, Sequenzy |
| Zdarzenia w produkcie | Zmiany w bazie danych zamieniane na wyzwalacze | Brew (`auth.users`), Sequenzy (jedna dowolna tabela), Loops (synchronizacja kontaktów) |
| Kampanie cyklu życia | Sekwencje, zaprojektowane e-maile, grupy odbiorców | Brew, Loops, Sequenzy |

Dokumentację każdego dostawcy sprawdziliśmy 28 września 2026 r.

## E-maile uwierzytelniające: najpierw zrezygnuj z domyślnego nadawcy

[Przewodnik Supabase po SMTP](https://supabase.com/docs/guides/auth/auth-smtp) wymienia ograniczenia wbudowanej usługi. Wysyła ona wiadomości tylko na wcześniej autoryzowane adresy. Ma niski limit – 2 wiadomości na godzinę – który może się zmienić bez uprzedzenia. Nie daje też żadnego SLA dotyczącego dostarczania. Do wszystkiego, co wykracza poza testy i dema, Supabase zaleca skonfigurowanie własnego serwera SMTP.

Na tej samej stronie Supabase odradza łączenie e-maili uwierzytelniających i marketingowych. Używaj osobnych usług albo przynajmniej osobnych domen wysyłkowych, np. `auth.example.com` i `marketing.example.com`, i nie umieszczaj treści promocyjnych w wiadomościach uwierzytelniających.

### Resend

[Przewodnik Resend dotyczący Supabase](https://resend.com/docs/send-with-supabase-smtp) to krótka konfiguracja SMTP. W sekcji Authentication w Supabase podajesz host `smtp.resend.com`, port `465`, nazwę użytkownika `resend` i klucz API jako hasło. Potrzebujesz zweryfikowanej domeny w Resend. Od tej chwili Supabase Auth wysyła wiadomości przez Resend.

### Loops

Loops opisuje [dwa sposoby integracji z Supabase](https://loops.so/docs/integrations/supabase). Auth Hook kieruje każdy e-mail z Supabase Auth przez Loops, a alternatywą jest SMTP. Osobna synchronizacja kontaktów przenosi użytkowników Supabase do Twoich odbiorców w Loops.

### Sequenzy

Sequenzy potrafi [kierować e-maile z Supabase Auth](https://docs.sequenzy.com/integrations/supabase) przez własną usługę SMTP. Konfiguruje domyślne szablony transakcyjne dla resetów haseł, magicznych linków, zaproszeń i powiadomień o bezpieczeństwie. Dane logowania SMTP możesz też wprowadzić ręcznie.

### Brew

Integracja Brew z Supabase nie wysyła e-maili Supabase Auth, a Brew nie opisuje w dokumentacji przekaźnika SMTP. E-maile weryfikacyjne, magiczne linki i resety haseł zostaw u dostawcy SMTP. API Brew może wysyłać e-maile transakcyjne wywoływane przez Twoją aplikację, np. potwierdzenie płatności. Wiadomości samego Supabase Auth nadal wymagają SMTP lub hooka uwierzytelniania.

## Zdarzenia w produkcie: które zmiany w bazie danych mogą uruchomić sekwencję

### Brew

[Integracja Brew z Supabase](https://docs.brew.new/integrations/import/supabase) uruchamia skrypt konfiguracyjny, który instaluje wyzwalacz bazy danych na tabeli `auth.users`. Wyzwalacz podpisuje każdą zmianę za pomocą `pgcrypto`, wysyła ją przez `pg_net` do unikalnego webhooka Brew, a wspólny sekret przechowuje w Supabase Vault. Brew odbiera trzy surowe zdarzenia: `auth.user.created`, `auth.user.updated` i `auth.user.deleted`. Na podstawie zmian w kolumnach wyznacza też dziewięć zdarzeń pochodnych:

- `auth.user.email_confirmed` i `auth.user.phone_confirmed`
- `auth.user.email_changed` i `auth.user.password_changed`
- `auth.user.signed_in`
- `auth.user.banned` i `auth.user.unbanned`
- `auth.user.invited`
- `auth.user.upgraded_from_anonymous`

Użytkownicy synchronizują się jako kontakty z polami `supabase_*`, takimi jak status konta, czas weryfikacji adresu e-mail i ostatnie logowanie. Dokumentacja Brew zaznacza, że odświeżenie tokena również aktualizuje `last_sign_in_at`, więc samo `auth.user.signed_in` nie jest wiarygodnym sygnałem, że ktoś „wrócił”.

W przypadku zdarzeń spoza `auth.users`, takich jak `project_created` czy `invite_sent`, utwórz w Brew własny wyzwalacz i wywołuj go z Edge Function w Supabase. Ten wzorzec pokazuje [przewodnik Brew dotyczący Lovable](https://docs.brew.new/integrations/ai-tools/lovable). Funkcja odczytuje `BREW_API_KEY` z sekretów Supabase i wywołuje `POST /v1/automations/triggers/{triggerEventId}/fire`.

### Sequenzy

Sequenzy łączy się z Supabase przez OAuth i za pomocą wyzwalacza `pg_net` obserwuje jedną wybraną przez Ciebie tabelę, zwykle `public.profiles`. Automatycznie wykrywa kolumny z adresem e-mail, identyfikatorem użytkownika oraz imieniem i nazwiskiem, a pozostałe kolumny synchronizuje na potrzeby segmentacji. Wstawienie wiersza emituje `contact.subscribed`. Aktualizacja odświeża atrybuty bez zdarzenia, a usunięcie emituje `contact.unsubscribed`. Automatyczne webhooki obsługują tylko jedną tabelę na integrację.

### Loops

Loops synchronizuje użytkowników Supabase z Twoimi odbiorcami i na podstawie tych danych może uruchamiać workflowy. Synchronizację kontaktów konfigurujesz niezależnie od ścieżki e-maili uwierzytelniających.

## Kampanie cyklu życia

Brew generuje e-maile na podstawie pliku [email-design.md](/pl/blog/email-design-md) Twojej marki, buduje automatyzacje z promptu i wysyła je z Twojej zweryfikowanej domeny. Sekwencja powitalna może startować po zdarzeniu `auth.user.email_confirmed`, dzięki czemu pierwszy e-mail trafi tylko do osób, które potwierdziły adres. Brew nie ma kanału SMS i nie obsługuje e-maili Supabase Auth.

Loops i Sequenzy obsługują zarówno kampanie cyklu życia, jak i e-maile uwierzytelniające, więc jeden dostawca może zająć się jednym i drugim. Jeśli wybierzesz tę drogę, i tak używaj osobnych domen wysyłkowych dla e-maili uwierzytelniających i marketingowych, zgodnie z zaleceniem Supabase.

## Przykładowa konfiguracja dla małej aplikacji na Supabase

Oto jeden z możliwych podziałów. Nie przetestowaliśmy go od początku do końca.

1. Supabase Auth wysyła potwierdzenia, magiczne linki i resety haseł przez własny serwer SMTP (Resend, Loops lub Sequenzy) z domeny `auth.example.com`.
2. Integracja Brew z Supabase nasłuchuje zmian w `auth.users`. Automatyzacja powitalna startuje po zdarzeniu `auth.user.email_confirmed`.
3. Twoja aplikacja planuje sprawdzenie przed przypomnieniem. W wyznaczonym momencie odczytuje bieżący stan projektów użytkownika i wywołuje osobne zdarzenie Brew `project_reminder_eligible` tylko wtedy, gdy użytkownik nadal nie ma żadnego projektu. Opublikowana automatyzacja wysyła przypomnienie na podstawie tego zdarzenia. Możesz też zdefiniować w Brew pole kontaktu typu prawda/fałsz `has_project`, synchronizować je i po kroku oczekiwania sprawdzać warunek `contact.has_project equals false`. Ten warunek odczytuje bieżące pole kontaktu w Brew, a dane pierwotnego zdarzenia pozostają niezmienione.
4. E-maile cyklu życia wychodzą z domeny marketingowej z nagłówkami wypisania.

## Najczęściej zadawane pytania

### Czy mogę używać domyślnej usługi e-mail Supabase w środowisku produkcyjnym?

Według Supabase nie. Domyślna usługa wysyła tylko na wcześniej autoryzowane adresy, z niskim limitem i bez SLA. Skonfiguruj własny serwer SMTP.

### Czy Brew zastępuje e-maile weryfikacyjne lub e-maile do resetowania hasła z Supabase?

Nie. Integracja Brew z Supabase uruchamia automatyzacje na podstawie zmian w `auth.users`. E-maile weryfikacyjne i e-maile do resetowania hasła wymagają dostawcy SMTP lub hooka uwierzytelniania.

### Dlaczego przed e-mailem powitalnym warto czekać na `email_confirmed`?

Wtedy powitanie trafia tylko na działające adresy i przychodzi po e-mailu weryfikacyjnym, a nie w tym samym momencie.

### Czy zsynchronizowani użytkownicy Supabase liczą się jako osoby ze zgodą na marketing?

Nie automatycznie. Według dokumentacji Brew każdy odbiorca e-maili marketingowych musi wyrazić zgodę przed importem. Zapisuj zgodę przy rejestracji i filtruj kontakty według niej.

## Następny krok

Aby zobaczyć, jakie zdarzenia przychodzą z Twojego projektu, [połącz Supabase z Brew](/pl/browse/integrations/supabase), dodaj testowego użytkownika i obserwuj panel „Ostatnie zdarzenia”, zanim opublikujesz sekwencję.
