Vai al contenuto

Basi della sicurezza

Supabase è down o è la tua app? Come capirlo

Supabase è down o è la tua app? Un progetto in pausa, un database pieno e un tuo errore sembrano la stessa cosa. Quattro controlli li separano.

Vlad Tkachenko16 min di lettura
Una strada di notte con palazzi illuminati e, davanti a loro, un palazzo con tutte le finestre spente.

In breve

  • Supabase è down? Può darsi. Un progetto in pausa, un progetto che ha raggiunto un limite e un errore nella tua app producono la stessa schermata vuota.
  • La pagina di stato di Supabase risponde solo alla prima domanda. L'elenco dei progetti e le pagine del tuo progetto rispondono alle due successive, e i codici di stato nel tuo browser chiudono l'ultima.
  • Un disservizio finisce senza di te. Un progetto in pausa resta fermo finché non lo riprendi, e dopo un anno quella possibilità sparisce.

La tua app si apre, e poi non si carica niente. L'elenco che dovrebbe mostrare gli ordini dei tuoi clienti è vuoto, il pulsante di accesso continua a girare, oppure la pagina resta bianca. Qualcuno ti ha già scritto per questo. Così cerchi «supabase è down», perché la tua app è stata costruita con Lovable o Bolt sopra un progetto Supabase, e Supabase è l'unico pezzo del meccanismo che conosci per nome.

Ecco dove la risposta di solito sbaglia. Dice: guarda la pagina di stato di Supabase. È il primo passo giusto, e risponde a una domanda su quattro. Il tuo progetto smette di rispondere alla tua app quando Supabase ha un disservizio, ma anche quando Supabase lo ha messo in pausa, quando ha raggiunto un limite e quando è la tua app a essere rotta mentre Supabase risponde correttamente a ogni richiesta. I tuoi clienti vedono la stessa schermata vuota in tutti e quattro i casi, e la pagina di stato conosce solo il primo.

Pensalo come un blackout in casa. La prima cosa che fa chiunque è guardare dalla finestra se anche i vicini sono al buio. Quella è la pagina di stato, e ti dice qualcosa sulla strada. Non dice niente della lettera sullo zerbino, del quadro elettrico in corridoio o della lampadina.

Ogni pagina di Supabase, ogni incidente e ogni numero di questo articolo sono stati letti il 30 settembre 2026.

Supabase è down, o è la tua app?

Dallo schermo non puoi capirlo, ed è per questo che la ricerca ti lascia bloccato. Quattro guasti diversi producono lo stesso risultato:

  1. Supabase è down. Qualcosa si è rotto dalla parte di Supabase, di solito in una regione o in un servizio. È saltata la luce in tutta la strada.
  2. Il tuo progetto è in pausa. Supabase ferma i progetti gratuiti rimasti circa una settimana senza attività. Ti hanno staccato la fornitura, e nessun altro nella strada ne risente.
  3. Il tuo progetto ha raggiunto un limite. Ha riempito il suo spazio ed è passato in sola lettura, oppure è rimasto senza capacità e ha rallentato finché le richieste non hanno più avuto risposta, oppure la tua organizzazione ha superato una quota ed è stata limitata. È scattato un interruttore.
  4. La tua app è rotta. Supabase risponde, e qualcosa dalla tua parte, una chiave, le regole di accesso di una tabella o un pezzo di codice, trasforma quella risposta in una schermata vuota. La corrente arriva. È la lampadina.

Qui e più avanti, il tuo progetto è il database Supabase in cui la tua app tiene i suoi dati, insieme all'accesso degli utenti, all'archivio dei file e all'API che gli stanno intorno.

Quattro guasti diversi, una sola schermata. I tuoi clienti non possono distinguerli, e nemmeno tu finché non controlli.

I controlli qui sotto li affrontano in ordine, dal meno costoso, e ognuno conferma o esclude un guasto.

Quattro controlli, dal meno costoso

Passo 1: Supabase è down per tutti?

Apri status.supabase.com. Se un incidente aperto nomina la tua regione o un servizio che la tua app usa, hai la tua risposta, e la sezione sui disservizi più sotto ti dice cosa farne.

La pagina elenca i servizi di Supabase uno per uno: il database e l'API con cui la tua app lo legge, Auth per l'accesso, Storage per i file caricati, Realtime, Edge Functions, la dashboard e qualche altro. Sotto c'è un elenco di regioni. Una regione è la parte del mondo in cui gira il tuo progetto, e la tua è indicata nella pagina Infrastructure delle impostazioni del progetto, con un codice come eu-west-1. Un incidente in us-east-1 non ha niente a che vedere con un progetto in Irlanda, quindi trova il tuo codice prima di leggere qualsiasi altra cosa.

Quello che la pagina non ha è una riga per il tuo progetto. Segnala i problemi che toccano abbastanza progetti da essere annunciati, e gli incidenti reali sono spesso circoscritti. I cinquanta più recenti, che risalgono fino al 15 luglio 2026, comprendono uno che ha messo fuori uso solo i progetti su un certo gruppo di macchine in eu-west-1, uno che ha lasciato senza risposta, dopo qualche ora di funzionamento, i progetti della taglia più piccola, quella del piano gratuito, e uno sugli errori 401 in una parte dei progetti nuovi rimasto aperto 46 giorni.

Una pagina verde, quindi, ti dice che Supabase non ha annunciato problemi. Il tuo progetto può essere down lì sotto, ed è di questo che parlano i prossimi tre controlli.

La pagina di stato riferisce su Supabase nel suo insieme. Non ha nessuna riga per il tuo progetto.

La dashboard ha una riga e incidenti tutti suoi. Il 1° settembre 2026 non ci si poteva nemmeno accedere, e un'app può continuare a funzionare durante un incidente del genere.

Già che sei sulla pagina, iscriviti agli aggiornamenti. Basta un indirizzo email, e Supabase pubblica anche lo storico degli incidenti come feed RSS.

Passo 2: il tuo progetto è in pausa?

Apri la dashboard di Supabase e guarda l'elenco dei tuoi progetti. Un progetto con Paused accanto al nome è stato fermato da Supabase, quasi sempre un progetto gratuito rimasto circa una settimana senza attività, e resta fermo finché non lo riprendi. Tutto il resto sulla pausa, compresa la scadenza di un anno e cosa fare quando l'opzione per riprenderlo è sparita, lo trovi in cosa fare quando il tuo progetto Supabase è in pausa.

Passo 3: il tuo progetto ha raggiunto un limite?

Guarda cosa funziona ancora. Ogni limite rompe qualcosa di diverso, e lo schema ti dice quale interruttore è scattato.

Le pagine si caricano e non si salva niente. È la modalità di sola lettura. Un progetto gratuito passa in sola lettura quando il suo database supera i 500 MB, uno a pagamento quando il suo disco si riempie più in fretta di quanto Supabase possa ingrandirlo. La lettura continua a funzionare, quindi l'app sembra a posto finché qualcuno non prova a registrarsi, a fare un ordine o a salvare un modulo, e ogni scrittura torna con cannot execute INSERT in a read-only transaction. La via d'uscita è più spazio, passando a un piano superiore o cancellando dati. Cosa spegne ogni limite del piano gratuito copre entrambe le strade, e la guida alle dimensioni del database di Supabase contiene l'SQL.

Tutto rallenta, poi smette di rispondere. Il progetto ha finito il margine. La sua taglia di calcolo stabilisce quanta memoria ha e quanto può far lavorare il disco, e le taglie più piccole ricevono una quota giornaliera per andare oltre, che Supabase chiama Disk IO Budget. Quando è esaurita, l'elenco di Supabase stessa delle possibili conseguenze comprende tempi di risposta che salgono in modo evidente e un'istanza che smette di rispondere. La quota si ricarica il giorno dopo, e la pagina Database Health, sotto Observability, ti mostra a che punto sei.

Potresti ricevere un'email che dice che il progetto «is running out of Disk IO Budget», oppure vedere nella dashboard un avviso che è unhealthy, con il pulsante Restart project sotto. Prendi l'email come un indizio. Dopo un incidente del 10 settembre 2026, Supabase ha avvisato i proprietari coinvolti che l'email sul Disk IO ricevuta non era più valida: l'aveva provocata l'incidente stesso.

Ogni richiesta fallisce con un 402. La tua organizzazione è stata limitata in base alla Fair Use Policy di Supabase, per essere rimasta sopra una quota dopo il periodo di tolleranza o per una fattura non pagata, e di solito la limitazione riguarda tutti i progetti dell'organizzazione. Il 402 indica il motivo con un codice come exceed_db_size_quota o overdue_payment, e Supabase dice che finché dura puoi ancora raggiungere i tuoi dati dalla dashboard. Passare a un piano superiore toglie subito una limitazione legata all'uso, altrimenti si toglie all'inizio del ciclo di fatturazione successivo.

Questo è il quadro elettrico. Tutti e tre i casi avvengono dentro il tuo progetto, quindi la pagina di stato non ne mostra nessuno.

Passo 4: chiedi direttamente al tuo progetto

Mandagli una richiesta e leggi la risposta. Se Supabase risponde normalmente, il problema è dalla tua parte del collegamento.

La versione più rapida non richiede strumenti. L'indirizzo del tuo progetto somiglia a https://abcdefghijklmnopqrst.supabase.co, e la sequenza di lettere prima di .supabase.co è nella barra degli indirizzi del browser ogni volta che hai il progetto aperto nella dashboard. Aggiungi /rest/v1/ in fondo, incollalo in una nuova scheda e guarda cosa torna.

  • Una riga di testo tra parentesi graffe che dice che non è stata trovata nessuna chiave API. Supabase risponde all'indirizzo del tuo progetto. Ti ha respinto perché la scheda non ha inviato nessuna chiave, ed è corretto. Il progetto esiste e non è in pausa.
  • «Impossibile raggiungere il sito» o «server non trovato». L'indirizzo non si risolve. La pagina di aiuto di Supabase su quell'errore elenca i motivi più comuni: un progetto in pausa, uno eliminato o un indirizzo scritto male.
  • Una pagina di errore con un numero nei 500, o niente dopo una lunga attesa. L'indirizzo esiste e il progetto dietro è in affanno. Torna al passo 3 e guarda di nuovo la pagina di stato.

La versione completa è la scheda Network del browser, che mostra le risposte che riceve la tua app con la sua chiave. Apri la tua app, premi F12, scegli Network, ricarica la pagina e scrivi nel campo del filtro le lettere dell'indirizzo del tuo progetto. Ogni richiesta al tuo progetto compare con un codice di stato, e il codice è già gran parte della diagnosi. I significati qui sotto vengono dall'elenco dei codici di stato di Supabase e dall'API del database che gira lì:

StatoCosa significaDove andare
200Supabase ha risposto e ha restituito qualcosaLa tua app, più sotto
401 o 403Supabase ha risposto e ha rifiutato la chiave, la tabella o la sessioneLa sezione successiva
402La tua organizzazione è limitataPasso 3
405 al salvataggio, mentre le letture ricevono 200Il database è in sola letturaPasso 3
540Il progetto è in pausaPasso 2
503, 544 o nessuna rispostaIl progetto è acceso e non riesce a stare al passoPasso 3, poi un riavvio
fallita, con «name not resolved»L'indirizzo al momento non esistePasso 2, poi controlla l'indirizzo

La riga da cercare per prima è 200. Se le richieste della tua app a Supabase tornano con 200 e lo schermo resta vuoto, Supabase ha fatto la sua parte, e la lampadina è tua. Forse le regole di una tabella non lasciano vedere nessuna riga a questo visitatore, cosa che arriva come un 200 con un elenco vuoto. Forse l'app punta a un progetto diverso da quello che stai guardando. Oppure il codice che disegna la pagina si è rotto su ciò che ha ricevuto, ed è una domanda per il tuo builder, con la richiesta e la sua risposta in mano.

Perché Supabase mi dà all'improvviso errori 401?

Perché Supabase ha risposto e ha rifiutato chi chiedeva. Un 401 significa che la richiesta ha raggiunto il tuo progetto, quindi la piattaforma funziona. Quello che è stato rifiutato è una di tre cose, e il messaggio ti dice quale: fai clic sulla richiesta nella scheda Network e apri la sua Response.

  • La chiave. Il messaggio dice Invalid API key o Legacy API keys are disabled. La tua app invia una chiave che il progetto non accetta più. La vecchia chiave anon, una lunga stringa che inizia con eyJ, smette di funzionare quando qualcuno disattiva le chiavi legacy nelle impostazioni del progetto, e Supabase ha avvertito che un progetto in pausa ripristinato dal 1° novembre 2025 torna senza di essa. Con le parole della stessa Supabase, i progetti in pausa che vengono ripristinati rischiano di non funzionare perché non avranno le chiavi legacy. La soluzione è mettere la chiave publishable attuale del progetto, quella che inizia con sb_publishable_, nelle impostazioni d'ambiente del tuo builder. I due formati di chiave sono messi a confronto fianco a fianco.
  • La tabella. Il messaggio dice permission denied for table. La chiave va bene, e quella tabella non è stata aperta a questo tipo di visitatore. Dal 30 ottobre 2026 una nuova tabella Supabase parte così, e il modo sicuro di aprirla ha un articolo tutto suo.
  • La sessione. Le pagine senza accesso funzionano, le persone che hanno fatto l'accesso ricevono errori 401 che vanno e vengono, e di solito il messaggio nomina un JWT, il token firmato che la tua app conserva per ogni persona collegata. Dal 14 agosto al 29 settembre 2026 la pagina di stato di Supabase ha riportato un incidente intitolato «401 errors due to JWT rejections»: una parte dei progetti nuovi rifiutava sessioni appena rinnovate. La soluzione di Supabase, pubblicata il 29 settembre, è una nuova versione del progetto che installi tu, con il pulsante Upgrade project nella pagina General delle impostazioni del progetto.

Quell'aggiornamento mette il progetto offline mentre è in corso, e la dashboard ti mostra una stima della durata prima che tu confermi. La guida all'aggiornamento di Supabase consiglia di fare prima una copia dei tuoi dati. Sul piano gratuito nessun altro la sta facendo, e farne una dalla dashboard non richiede un terminale.

Come si riavvia un progetto Supabase?

Dalla dashboard: apri il progetto, vai in Project Settings, poi General, e premi Restart project sotto Project availability. La freccia accanto al pulsante offre Fast database reboot, che riavvia solo il database e accorcia l'interruzione. In entrambi i casi Supabase avvisa di qualche minuto offline.

Un riavvio è lo strumento giusto per un progetto sovraccarico o segnato come unhealthy, ed è quello che Supabase ha chiesto ai proprietari coinvolti dopo l'incidente del 10 settembre. Se il progetto è troppo piccolo per il suo lavoro il problema torna, e la soluzione duratura è una taglia di calcolo più grande o query più leggere. Un progetto in pausa ha bisogno di Resume project, che si trova nello stesso punto. Un database pieno è ancora pieno dopo un riavvio, e una chiave rifiutata resta rifiutata.

Lascia stare il pulsante durante un incidente che nomina le azioni sui progetti. Il 4 settembre 2026 riavvii, ripristini e cambi di taglia di calcolo davano errori in tutte le regioni, Supabase ha chiesto di non tentarli e per un po' li ha disattivati del tutto.

Cosa puoi fare durante un disservizio di Supabase?

Molto poco, e aspettare è la scelta giusta. Il disservizio tocca a Supabase risolverlo, e il tuo progetto torna senza che tu lo tocchi.

Questo fa del disservizio l'unico guasto di questo articolo che si risolve aspettando, ed è il motivo per cui il passo 2 viene prima di qualsiasi cosa tu faccia qui. Un blackout si aspetta. Un distacco della fornitura resta finché non chiami il fornitore, e un progetto in pausa resta fermo finché non lo riprendi, con un anno sull'orologio dal giorno in cui si è fermato.

Un disservizio torna da solo. Un progetto in pausa torna quando lo riprendi, e solo entro l'anno.

Cosa vale la pena fare mentre aspetti:

  • Verifica che ti riguardi. Controlla che l'incidente nomini la tua regione o un servizio che la tua app usa.
  • Iscriviti a quell'incidente, così ti arriva l'aggiornamento che ne annuncia la fine.
  • Avvisa i tuoi utenti. Una riga dove ti cercano, per dire che l'app è coinvolta in un disservizio del suo fornitore di database e che tornerà.
  • Lascia stare il progetto. Durante l'incidente del 4 settembre, Supabase ha sconsigliato di creare progetti, modificare configurazioni, riavviare o cambiare la taglia di calcolo finché l'incidente non fosse risolto. I progetti in funzione hanno continuato a girare mentre quelle azioni fallivano.

Non c'è nemmeno niente da reclamare per il fermo, a meno che tu non sia su Enterprise. L'impegno di disponibilità di Supabase, con crediti di servizio per un mese sotto il 99,9%, è scritto solo per i clienti Enterprise.

Cosa avere pronto prima della prossima volta

Quattro cose, tutte più facili in un giorno in cui non è rotto niente:

  • La tua regione, annotata accanto all'indirizzo del tuo progetto, e un'iscrizione alla pagina di stato.
  • La tua app sulla chiave publishable. Supabase ritira le vecchie chiavi anon e service_role entro la fine del 2026, e un'app che ne invia ancora una comincerà a collezionare errori 401 quando spariranno.
  • Una copia del tuo database fuori dal tuo account Supabase. Un disservizio, una pausa e una limitazione avvengono tutti dentro Supabase, e una copia tenuta altrove è fuori dalla loro portata. Sul piano gratuito Supabase non tiene nessuna copia per te.
  • Qualcosa che si accorga quando la tua app smette di rispondere e te lo dica prima che debba farlo un cliente.

Dove entra Reeve

Reeve Monitor sorveglia l'indirizzo che caricano i tuoi visitatori. Reeve Care si collega anche al database Supabase che sta dietro, e ne tiene una copia fuori dal tuo account Supabase.

  • Monitor controlla l'indirizzo della tua app ogni 60 secondi dall'esterno, e ti manda un'email quando smette di rispondere e un'altra quando torna. Ripete anche ogni ora i nostri nove controlli di sicurezza, su un massimo di tre app.
  • Care si collega da solo al tuo database Supabase per farne una copia, ogni giorno con Care e più spesso con i piani superiori. Una notte in cui il database non risponde è una copia che non si è potuta fare, e ricevi un'email che spiega cosa è successo.
  • La copia sta fuori dal tuo account Supabase, cifrata, e viene riletta prima di contare, così una pausa o una limitazione lasciano la tua ultima copia buona dove puoi raggiungerla.
  • Ripristinare è un pulsante, e prima viene scattata un'istantanea dello stato attuale, così il ripristino ha un suo annulla.

Cosa copre ogni piano è nella pagina dei prezzi, e la copia, il controllo e il ripristino sono disegnati passo per passo nella pagina sui backup di Supabase.

Cosa fare adesso

Cosa fare

  • Trova la regione del tuo progetto nella pagina Infrastructure delle sue impostazioni, e iscriviti alla pagina di stato di Supabase.
  • Quando la tua app resta vuota, controlla in quest'ordine: la pagina di stato, la scritta Paused nell'elenco dei progetti, pagine che si caricano mentre il salvataggio fallisce, e i codici di stato nella scheda Network del browser.
  • Se il progetto è in pausa, riprendilo oggi. Aspettare consuma solo l'anno che hai.
  • Se le richieste tornano con 401, leggi il messaggio prima di cambiare qualsiasi cosa. Una chiave, una tabella e una sessione hanno ciascuna la propria soluzione.
  • Durante un vero disservizio, lascia stare il progetto: niente riavvii, ripristini o aggiornamenti finché l'incidente non è risolto.
  • Passa la tua app alla chiave sb_publishable_ e tieni una copia del database fuori da Supabase, finché non è rotto niente.

Prima di chiudere questa scheda, apri le impostazioni Infrastructure del tuo progetto, annota il codice della sua regione accanto al suo indirizzo e iscriviti alla pagina di stato. Se la schermata vuota di oggi si è rivelata una pausa, ecco cosa fare adesso.

FAQ

Supabase è down in questo momento?

Guarda status.supabase.com, dove Supabase pubblica i propri incidenti, servizio per servizio e regione per regione. Trova prima la regione del tuo progetto: è indicata nella pagina Infrastructure delle impostazioni del progetto, con un codice come eu-west-1. Se nella pagina di stato nulla nomina quella regione o un servizio che la tua app usa, Supabase non ha annunciato problemi, e il prossimo posto dove guardare è il tuo progetto.

La mia app non funziona ma la pagina di stato di Supabase è verde. E adesso?

Guarda il tuo progetto. Controlla nell'elenco dei progetti della dashboard di Supabase se compare la parola Paused, poi se il progetto risulta unhealthy, in sola lettura o limitato. Se tutto sembra normale, apri la tua app, premi F12, scegli la scheda Network e ricarica. Una richiesta al tuo progetto che torna con 200 significa che Supabase ha risposto, e il problema è dalla tua parte.

Un progetto Supabase in pausa è la stessa cosa di un disservizio?

No, e chiedono reazioni opposte. Un disservizio dipende da Supabase e finisce quando lo risolvono, quindi aspettare è la cosa giusta. Una pausa è Supabase che ferma il tuo progetto, quasi sempre uno gratuito rimasto una settimana senza attività, e non cambia nulla finché non lo riprendi dalla dashboard. Hai un anno per farlo. Dopo, la dashboard ti offre un download al suo posto, e tornare online richiede un progetto nuovo con un indirizzo nuovo.

Perché Supabase mi dà all'improvviso errori 401?

Un 401 significa che Supabase ha risposto e ha rifiutato chi chiedeva. Forse la tua app invia una chiave che il progetto non accetta più, cosa che succede quando la vecchia chiave anon viene disattivata o quando un progetto in pausa viene ripristinato senza di essa. Una tabella può rifiutare con permission denied. Oppure vengono rifiutate le sessioni: dal 14 agosto al 29 settembre 2026 è successo proprio questo a una parte dei progetti nuovi, e la soluzione è Upgrade project nella pagina General.

Come riavvio il mio progetto Supabase?

Apri il progetto nella dashboard di Supabase e vai in Project Settings, poi General. Sotto Project availability, Restart project riavvia tutto, e la freccia accanto offre Fast database reboot, che riavvia solo il database con un'interruzione più breve. In entrambi i casi metti in conto qualche minuto offline. Un riavvio aiuta un progetto sovraccarico o segnato come unhealthy. Un progetto in pausa ha bisogno di Resume, nella stessa pagina, e un database pieno ha bisogno di spazio.

Posso fare qualcosa durante un disservizio di Supabase?

Molto poco, e aspettare è la scelta giusta. Controlla che l'incidente nomini la tua regione, iscriviti ai suoi aggiornamenti e spiega ai tuoi utenti cosa stanno vedendo. Lascia stare riavvii, ripristini, aggiornamenti e cambi di dimensione di calcolo finché non è risolto: in un incidente che ha coinvolto tutta la piattaforma il 4 settembre 2026, Supabase ha sconsigliato proprio queste azioni. La garanzia di disponibilità con crediti di servizio copre solo i clienti Enterprise.

Scritto da

Vlad Tkachenko

Fondatore di Reeve

Passo le giornate a guardare app costruite con Lovable, Bolt, v0, Cursor e Replit, e la breve lista di errori che vi ricompaiono di continuo.

Altro sull'autore

Da leggere dopo

Tutti gli articoli

Non sai come sta messa la tua app?

Esegui una scansione gratuita e ottieni un voto chiaro da A a F in una ventina di secondi. Senza account e senza carta.

Scansiona la tua app gratis

Controllo esterno automatizzato, non un audit completo. L'assenza di risultati non è una garanzia di sicurezza.