[{"data":1,"prerenderedAt":1072},["ShallowReactive",2],{"blog-de-is-supabase-down-or-your-app":3,"blog-index-de":718},{"id":4,"title":5,"body":6,"category":671,"cover":672,"coverAlt":673,"description":674,"draft":675,"extension":676,"faq":677,"image":695,"keywords":696,"meta":706,"navigation":707,"ogTitle":708,"path":709,"published":710,"seo":711,"stem":712,"tldr":713,"updated":710,"__hash__":717},"blog_de\u002Fblog\u002Fis-supabase-down-or-your-app.md","Ist Supabase down oder liegt es an deiner App? So erkennst du es",{"type":7,"value":8,"toc":653},"minimark",[9,13,16,19,22,27,30,59,62,68,71,75,80,91,103,109,112,117,120,123,127,135,139,142,163,169,172,186,189,193,196,211,238,251,371,377,381,384,449,463,467,470,473,476,480,483,486,491,494,520,529,533,536,569,573,578,604,617,621,647],[10,11,12],"p",{},"Deine App öffnet sich, und dann lädt nichts. Die Liste, in der die Bestellungen\ndeiner Kunden stehen sollten, ist leer, der Anmelde-Button dreht sich, oder die\nSeite bleibt weiß. Jemand hat dir deswegen schon geschrieben. Also suchst du\nnach „ist Supabase down“, denn deine App wurde mit Lovable oder Bolt auf einem\nSupabase-Projekt gebaut, und Supabase ist der einzige Teil der Technik, den du\nbeim Namen kennst.",[10,14,15],{},"Hier liegt die übliche Antwort daneben. Sie lautet: Sieh auf der Statusseite von\nSupabase nach. Das ist der richtige erste Schritt, und er beantwortet eine von\nvier Fragen. Dein Projekt antwortet deiner App nicht mehr, wenn Supabase einen\nAusfall hat, aber auch, wenn Supabase es pausiert hat, wenn es an ein Limit\ngestoßen ist und wenn deine eigene App kaputt ist, während Supabase jede Anfrage\nkorrekt beantwortet. Deine Kunden sehen in allen vier Fällen denselben leeren\nBildschirm, und die Statusseite weiß nur vom ersten.",[10,17,18],{},"Stell es dir vor wie einen Stromausfall zu Hause. Das Erste, was jeder tut, ist\naus dem Fenster zu schauen, ob bei den Nachbarn auch alles dunkel ist. Das ist\ndie Statusseite, und sie sagt dir etwas über die Straße. Über den Brief auf der\nFußmatte, den Sicherungskasten im Flur oder die Glühbirne sagt sie nichts.",[10,20,21],{},"Jede Supabase-Seite, jeder Vorfall und jede Zahl in diesem Artikel wurde am 30.\nSeptember 2026 gelesen.",[23,24,26],"h2",{"id":25},"ist-supabase-down-oder-liegt-es-an-deiner-app","Ist Supabase down, oder liegt es an deiner App?",[10,28,29],{},"Am Bildschirm kannst du es nicht erkennen, und deshalb bleibt man bei der Suche\nhängen. Vier verschiedene Fehler führen zum selben Ergebnis:",[31,32,33,41,47,53],"ol",{},[34,35,36,40],"li",{},[37,38,39],"strong",{},"Supabase ist down."," Auf der Seite von Supabase ist etwas ausgefallen,\nmeist in einer Region oder bei einem Dienst. Die ganze Straße ist dunkel.",[34,42,43,46],{},[37,44,45],{},"Dein Projekt ist pausiert."," Supabase hält kostenlose Projekte an, die etwa\neine Woche lang keine Aktivität hatten. Dir wurde der Strom abgestellt, und\nsonst ist in der Straße niemand betroffen.",[34,48,49,52],{},[37,50,51],{},"Dein Projekt ist an ein Limit gestoßen."," Es hat seinen Platz gefüllt und\nist schreibgeschützt geworden, oder ihm ist die Leistung ausgegangen und es\nwurde langsamer, bis Anfragen ins Leere liefen, oder deine Organisation hat\nein Kontingent überschritten und wurde eingeschränkt. Eine Sicherung ist\nrausgeflogen.",[34,54,55,58],{},[37,56,57],{},"Deine App ist kaputt."," Supabase antwortet, und etwas auf deiner Seite, ein\nSchlüssel, die Zugriffsregeln einer Tabelle oder ein Stück Code, macht aus\ndieser Antwort einen leeren Bildschirm. Der Strom ist da. Es ist die\nGlühbirne.",[10,60,61],{},"Mit deinem Projekt ist hier und im Folgenden die Supabase-Datenbank gemeint, in\nder deine App ihre Daten ablegt, zusammen mit der Anmeldung, dem Dateispeicher\nund der API drumherum.",[63,64],"diagram",{"alt":65,"caption":66,"src":67},"Vier Kacheln links, alle in Bernstein gezeichnet: eine Wolke, ein Pausezeichen, ein ausgelöster Schalter und ein Code-Editor. Ihre Linien laufen zusammen und münden in ein einziges leeres Browserfenster mit einem Ladekreis darin.","Vier verschiedene Fehler, ein Bildschirm. Deine Kunden können sie nicht auseinanderhalten, und du auch nicht, bis du nachsiehst.","\u002Fblog\u002Fis-supabase-down-or-your-app\u002Ffour-causes-one-screen-1600x620.png",[10,69,70],{},"Die Prüfungen unten gehen sie der Reihe nach durch, die günstigste zuerst, und\njede schließt einen Fehler ein oder aus.",[23,72,74],{"id":73},"vier-prüfungen-die-günstigste-zuerst","Vier Prüfungen, die günstigste zuerst",[76,77,79],"h3",{"id":78},"schritt-1-ist-supabase-für-alle-down","Schritt 1: Ist Supabase für alle down?",[10,81,82,83,90],{},"Öffne ",[84,85,89],"a",{"href":86,"rel":87},"https:\u002F\u002Fstatus.supabase.com\u002F",[88],"nofollow","status.supabase.com",". Nennt ein offener\nVorfall deine Region oder einen Dienst, den deine App nutzt, hast du deine\nAntwort, und der Abschnitt über Ausfälle weiter unten sagt dir, was du damit\nmachst.",[10,92,93,94,98,99,102],{},"Die Seite listet die Dienste von Supabase einzeln auf: die Datenbank und die\nAPI, über die deine App sie liest, Auth für die Anmeldung, Storage für\nhochgeladene Dateien, Realtime, Edge Functions, das Dashboard und ein paar mehr.\nDarunter steht eine Liste von Regionen. Eine Region ist der Teil der Welt, in\ndem dein Projekt läuft, und deine steht auf der Seite Infrastructure in den\nProjekteinstellungen, mit einem Code wie ",[95,96,97],"code",{},"eu-west-1",". Ein Vorfall in ",[95,100,101],{},"us-east-1","\nhat nichts mit einem Projekt in Irland zu tun, also such deinen Code heraus,\nbevor du irgendetwas anderes liest.",[10,104,105,106,108],{},"Was die Seite nicht hat, ist eine Zeile für dein Projekt. Sie meldet Probleme,\ndie genug Projekte treffen, um sie anzukündigen, und echte Vorfälle sind oft eng\nbegrenzt. Die fünfzig jüngsten dort, zurück bis zum 15. Juli 2026, umfassen\neinen, der nur die Projekte auf einer bestimmten Hardware in ",[95,107,97],{},"\nlahmlegte, einen, der Projekte der kleinsten, kostenlosen Größe nach ein paar\nStunden Laufzeit nicht mehr antworten ließ, und einen zu 401-Fehlern bei einem\nTeil der neuen Projekte, der 46 Tage offen blieb.",[10,110,111],{},"Eine grüne Seite sagt dir also, dass Supabase kein Problem angekündigt hat. Dein\nProjekt kann darunter trotzdem down sein, und darum geht es in den nächsten drei\nPrüfungen.",[63,113],{"alt":114,"caption":115,"src":116},"Eine Statustafel, auf der jede Zeile grün leuchtet. Darunter eine Reihe von Projekten, alle erleuchtet bis auf eines, das dunkel und umkreist ist.","Die Statusseite berichtet über Supabase als Ganzes. Eine Zeile für dein Projekt hat sie nicht.","\u002Fblog\u002Fis-supabase-down-or-your-app\u002Fgreen-page-dark-project-1600x620.png",[10,118,119],{},"Das Dashboard hat eine eigene Zeile und eigene Vorfälle. Am 1. September 2026\nkonnte sich dort niemand einloggen, und eine App kann während so etwas ganz\nnormal weiterlaufen.",[10,121,122],{},"Wenn du schon auf der Seite bist, abonniere die Updates. Dafür reicht eine\nE-Mail-Adresse, und Supabase veröffentlicht die Vorfallsgeschichte außerdem als\nRSS-Feed.",[76,124,126],{"id":125},"schritt-2-ist-dein-projekt-pausiert","Schritt 2: Ist dein Projekt pausiert?",[10,128,129,130,134],{},"Öffne das Supabase-Dashboard und sieh dir deine Projektliste an. Ein Projekt mit\nPaused neben dem Namen wurde von Supabase angehalten, meist ein kostenloses\nProjekt, das etwa eine Woche ohne Aktivität war, und es bleibt angehalten, bis\ndu es fortsetzt. Alles Weitere zur Pause, einschließlich der Frist von einem\nJahr und was zu tun ist, wenn die Option zum Fortsetzen verschwunden ist, steht\nin ",[84,131,133],{"href":132},"\u002Fblog\u002Fsupabase-project-paused-recover","was zu tun ist, wenn dein Supabase-Projekt pausiert\nist",".",[76,136,138],{"id":137},"schritt-3-ist-dein-projekt-an-ein-limit-gestoßen","Schritt 3: Ist dein Projekt an ein Limit gestoßen?",[10,140,141],{},"Achte darauf, was noch funktioniert. Jedes Limit legt etwas anderes lahm, und am\nMuster erkennst du, welche Sicherung rausgeflogen ist.",[10,143,144,147,148,151,152,156,157,162],{},[37,145,146],{},"Seiten laden, aber nichts wird gespeichert."," Das ist der Nur-Lese-Modus. Ein\nkostenloses Projekt wird schreibgeschützt, wenn seine Datenbank 500 MB\nüberschreitet, ein bezahltes, wenn sich seine Festplatte schneller füllt, als\nSupabase sie vergrößern darf. Lesen funktioniert weiter, also sieht die App gut\naus, bis jemand sich registrieren, eine Bestellung aufgeben oder ein Formular\nspeichern will, und jeder Schreibvorgang kommt mit\n",[95,149,150],{},"cannot execute INSERT in a read-only transaction"," zurück. Der Ausweg ist mehr\nPlatz, durch ein Upgrade oder durch das Löschen von Daten. ",[84,153,155],{"href":154},"\u002Fblog\u002Fsupabase-free-plan-limits","Was jedes Limit im\nGratis-Tarif abschaltet"," behandelt beides, und\nder ",[84,158,161],{"href":159,"rel":160},"https:\u002F\u002Fsupabase.com\u002Fdocs\u002Fguides\u002Fplatform\u002Fdatabase-size",[88],"Leitfaden zur\nDatenbankgröße"," von\nSupabase liefert das SQL.",[10,164,165,168],{},[37,166,167],{},"Alles wird langsamer und antwortet dann nicht mehr."," Dem Projekt ist der\nSpielraum ausgegangen. Seine Rechengröße legt fest, wie viel Arbeitsspeicher es\nhat und wie stark es seine Festplatte beanspruchen darf, und die kleineren\nGrößen bekommen ein tägliches Kontingent, um darüber hinauszugehen, das Supabase\nDisk IO Budget nennt. Ist es aufgebraucht, gehören laut Supabases eigener Liste\ndeutlich steigende Antwortzeiten und eine Instanz, die nicht mehr reagiert, zu\nden möglichen Folgen. Das Budget füllt sich am nächsten Tag wieder auf, und die\nSeite Database Health unter Observability zeigt, wo du stehst.",[10,170,171],{},"Vielleicht bekommst du eine E-Mail, dass das Projekt „is running out of Disk IO\nBudget“, oder du siehst im Dashboard einen Hinweis, dass es unhealthy ist, mit\ndem Knopf Restart project darunter. Nimm die E-Mail als Hinweis. Nach einem\nVorfall am 10. September 2026 teilte Supabase den betroffenen Inhabern mit, dass\ndie Disk-IO-E-Mail, die sie bekommen hatten, nicht mehr galt: Der Vorfall hatte\nsie ausgelöst.",[10,173,174,177,178,181,182,185],{},[37,175,176],{},"Jede Anfrage scheitert mit einem 402."," Deine Organisation wurde nach der Fair\nUse Policy von Supabase eingeschränkt, weil sie nach ihrer Schonfrist über einem\nKontingent blieb oder eine Rechnung offen ist, und die Einschränkung gilt meist\nfür jedes Projekt der Organisation. Der 402 nennt den Grund mit einem Code wie\n",[95,179,180],{},"exceed_db_size_quota"," oder ",[95,183,184],{},"overdue_payment",", und laut Supabase kommst du über\ndas Dashboard weiter an deine Daten, solange sie gilt. Ein Upgrade hebt eine\nnutzungsbedingte Einschränkung sofort auf, sonst endet sie mit dem nächsten\nAbrechnungszeitraum.",[10,187,188],{},"Das ist der Sicherungskasten. Alle drei passieren in deinem eigenen Projekt,\nalso zeigt die Statusseite keinen davon.",[76,190,192],{"id":191},"schritt-4-frag-dein-projekt-direkt","Schritt 4: Frag dein Projekt direkt",[10,194,195],{},"Schick ihm eine Anfrage und lies die Antwort. Antwortet Supabase normal, liegt\nder Fehler auf deiner Seite der Verbindung.",[10,197,198,199,202,203,206,207,210],{},"Die schnellste Variante braucht keine Werkzeuge. Die Adresse deines Projekts\nsieht aus wie ",[95,200,201],{},"https:\u002F\u002Fabcdefghijklmnopqrst.supabase.co",", und die\nBuchstabenfolge vor ",[95,204,205],{},".supabase.co"," steht in der Adressleiste deines Browsers,\nwann immer das Projekt im Dashboard offen ist. Häng ",[95,208,209],{},"\u002Frest\u002Fv1\u002F"," an, füg das\nGanze in einen neuen Tab ein und sieh, was zurückkommt.",[212,213,214,220,232],"ul",{},[34,215,216,219],{},[37,217,218],{},"Eine Zeile Text in geschweiften Klammern, dass kein API-Schlüssel gefunden\nwurde."," Supabase antwortet unter der Adresse deines Projekts. Es hat dich\nabgewiesen, weil der Tab keinen Schlüssel mitgeschickt hat, und das ist\nkorrekt. Das Projekt existiert und ist nicht pausiert.",[34,221,222,225,226,231],{},[37,223,224],{},"„Diese Website ist nicht erreichbar“ oder „Server nicht gefunden“."," Die\nAdresse lässt sich nicht auflösen. Die ",[84,227,230],{"href":228,"rel":229},"https:\u002F\u002Fsupabase.com\u002Fdocs\u002Fguides\u002Ftroubleshooting\u002Fnxdomain-error-connecting-to-a-supabase-project",[88],"Hilfeseite von Supabase zu diesem\nFehler","\nnennt die üblichen Gründe: ein pausiertes Projekt, ein gelöschtes oder eine\nvertippte Adresse.",[34,233,234,237],{},[37,235,236],{},"Eine Fehlerseite mit einer Zahl im 500er-Bereich, oder nach langem Warten\ngar nichts."," Die Adresse existiert, und das Projekt dahinter kämpft. Geh\nzurück zu Schritt 3 und sieh noch einmal auf die Statusseite.",[10,239,240,241,244,245,250],{},"Die ausführlichere Variante ist der Tab ",[37,242,243],{},"Network"," in deinem Browser, der die\nAntworten zeigt, die deine App mit ihrem eigenen Schlüssel bekommt. Öffne deine\nApp, drück F12, wähl Network, lade die Seite neu und tipp die Buchstaben aus der\nAdresse deines Projekts ins Filterfeld. Jede Anfrage an dein Projekt erscheint\nmit einem Statuscode, und der Code ist schon der größte Teil der Diagnose. Die\nBedeutungen unten stammen aus der ",[84,246,249],{"href":247,"rel":248},"https:\u002F\u002Fsupabase.com\u002Fdocs\u002Fguides\u002Ftroubleshooting\u002Fhttp-status-codes",[88],"Liste der\nStatuscodes","\nvon Supabase und von der Datenbank-API, die dort läuft:",[252,253,254,270],"table",{},[255,256,257],"thead",{},[258,259,260,264,267],"tr",{},[261,262,263],"th",{},"Status",[261,265,266],{},"Was er bedeutet",[261,268,269],{},"Wohin als Nächstes",[271,272,273,287,303,316,329,342,360],"tbody",{},[258,274,275,281,284],{},[276,277,278],"td",{},[95,279,280],{},"200",[276,282,283],{},"Supabase hat geantwortet und etwas zurückgeschickt",[276,285,286],{},"Deine App, siehe unten",[258,288,289,297,300],{},[276,290,291,181,294],{},[95,292,293],{},"401",[95,295,296],{},"403",[276,298,299],{},"Supabase hat geantwortet und den Schlüssel, die Tabelle oder die Sitzung abgelehnt",[276,301,302],{},"Der nächste Abschnitt",[258,304,305,310,313],{},[276,306,307],{},[95,308,309],{},"402",[276,311,312],{},"Deine Organisation ist eingeschränkt",[276,314,315],{},"Schritt 3",[258,317,318,324,327],{},[276,319,320,323],{},[95,321,322],{},"405"," beim Speichern, während Lesen 200 bekommt",[276,325,326],{},"Die Datenbank ist schreibgeschützt",[276,328,315],{},[258,330,331,336,339],{},[276,332,333],{},[95,334,335],{},"540",[276,337,338],{},"Das Projekt ist pausiert",[276,340,341],{},"Schritt 2",[258,343,344,354,357],{},[276,345,346,349,350,353],{},[95,347,348],{},"503",", ",[95,351,352],{},"544"," oder keine Antwort",[276,355,356],{},"Das Projekt läuft und kommt nicht hinterher",[276,358,359],{},"Schritt 3, dann ein Neustart",[258,361,362,365,368],{},[276,363,364],{},"fehlgeschlagen, mit „name not resolved“",[276,366,367],{},"Die Adresse existiert gerade nicht",[276,369,370],{},"Schritt 2, dann die Adresse prüfen",[10,372,373,374,376],{},"Die Zeile, nach der du zuerst suchst, ist ",[95,375,280],{},". Kommen die Anfragen deiner App\nan Supabase mit 200 zurück und der Bildschirm bleibt trotzdem leer, hat Supabase\nseinen Teil erledigt, und die Glühbirne ist deine. Vielleicht lassen die Regeln\neiner Tabelle diesen Besucher keine Zeilen sehen, was als 200 mit einer leeren\nListe ankommt. Vielleicht zeigt die App auf ein anderes Projekt als das, das du\ngerade ansiehst. Oder der Code, der die Seite zeichnet, ist an dem gescheitert,\nwas er bekommen hat, und das ist eine Frage an deinen Builder, mit der Anfrage\nund ihrer Antwort in der Hand.",[23,378,380],{"id":379},"warum-bekomme-ich-von-supabase-plötzlich-401-fehler","Warum bekomme ich von Supabase plötzlich 401-Fehler?",[10,382,383],{},"Weil Supabase geantwortet und den Absender abgewiesen hat. Ein 401 heißt, dass\ndie Anfrage dein Projekt erreicht hat, die Plattform also läuft. Abgelehnt wurde\neines von drei Dingen, und die Meldung sagt dir, welches: Klick im Network-Tab\nauf die Anfrage und öffne ihre Response.",[212,385,386,423,437],{},[34,387,388,391,392,395,396,399,400,403,404,407,408,413,414,417,418,422],{},[37,389,390],{},"Der Schlüssel."," Die Meldung lautet ",[95,393,394],{},"Invalid API key"," oder\n",[95,397,398],{},"Legacy API keys are disabled",". Deine App schickt einen Schlüssel, den das\nProjekt nicht mehr annimmt. Der ältere ",[95,401,402],{},"anon","-Schlüssel, eine lange\nZeichenkette, die mit ",[95,405,406],{},"eyJ"," beginnt, funktioniert nicht mehr, wenn jemand die\nLegacy-Schlüssel in den Projekteinstellungen abschaltet, und Supabase hat\ngewarnt, dass ein pausiertes Projekt, das seit dem 1. November 2025\nwiederhergestellt wird, ohne ihn zurückkommt. ",[84,409,412],{"href":410,"rel":411},"https:\u002F\u002Fgithub.com\u002Forgs\u002Fsupabase\u002Fdiscussions\u002F29260",[88],"Nach Supabases eigenen\nWorten"," laufen\nwiederhergestellte pausierte Projekte Gefahr, kaputt zu sein, weil ihnen die\nLegacy-Schlüssel fehlen. Die Lösung ist der aktuelle Publishable Key des\nProjekts, der mit ",[95,415,416],{},"sb_publishable_"," beginnt, in den Umgebungseinstellungen\ndeines Builders. ",[84,419,421],{"href":420},"\u002Fblog\u002Fsupabase-new-api-keys","Die beiden Schlüsselformate","\nwerden dort nebeneinander verglichen.",[34,424,425,391,428,431,432,436],{},[37,426,427],{},"Die Tabelle.",[95,429,430],{},"permission denied for table",". Der\nSchlüssel ist in Ordnung, und diese Tabelle wurde für diese Art von Besucher\nnicht geöffnet. Ab dem 30. Oktober 2026 beginnt jede neue Supabase-Tabelle\ngenau so, und ",[84,433,435],{"href":434},"\u002Fblog\u002Fsupabase-permission-denied-for-table","der sichere Weg, sie zu\nöffnen"," hat einen eigenen Artikel.",[34,438,439,442,443,448],{},[37,440,441],{},"Die Sitzung."," Seiten ohne Anmeldung funktionieren, angemeldete Nutzer\nbekommen 401-Fehler, die kommen und gehen, und die Meldung erwähnt meist ein\nJWT, das signierte Token, das deine App für jede angemeldete Person hält. Vom 14. August bis 29. September 2026 stand auf der Statusseite von Supabase ein\nVorfall mit dem Titel ",[84,444,447],{"href":445,"rel":446},"https:\u002F\u002Fstatus.supabase.com\u002Fincidents\u002F6q5902p2xd9f",[88],"„401 errors due to JWT\nrejections“",": Ein Teil der\nneuen Projekte lehnte Sitzungen ab, die gerade erneuert worden waren. Die\nLösung von Supabase, veröffentlicht am 29. September, ist eine neue Version\ndes Projekts, die du selbst installierst, mit dem Knopf Upgrade project auf\nder Seite General der Projekteinstellungen.",[10,450,451,452,457,458,462],{},"Dieses Upgrade nimmt das Projekt offline, solange es läuft, und das Dashboard\nzeigt dir vor der Bestätigung eine Schätzung, wie lange. Der\n",[84,453,456],{"href":454,"rel":455},"https:\u002F\u002Fsupabase.com\u002Fdocs\u002Fguides\u002Fplatform\u002Fupgrading",[88],"Upgrade-Leitfaden"," von\nSupabase empfiehlt, vorher eine Kopie deiner Daten zu ziehen. Im Gratis-Tarif\nmacht das sonst niemand, und ",[84,459,461],{"href":460},"\u002Fblog\u002Fback-up-supabase-free-tier","eine aus dem Dashboard zu\nziehen"," braucht kein Terminal.",[23,464,466],{"id":465},"wie-starte-ich-ein-supabase-projekt-neu","Wie starte ich ein Supabase-Projekt neu?",[10,468,469],{},"Im Dashboard: Öffne das Projekt, geh zu Project Settings, dann General, und\ndrück Restart project unter Project availability. Der Pfeil neben dem Knopf\nbietet Fast database reboot an, das nur die Datenbank neu startet und die\nAusfallzeit kürzer hält. So oder so warnt Supabase vor ein paar Minuten offline.",[10,471,472],{},"Ein Neustart ist das richtige Werkzeug für ein Projekt, das überlastet oder als\nunhealthy markiert ist, und genau darum bat Supabase die betroffenen Inhaber\nnach dem Vorfall vom 10. September. Ist das Projekt zu klein für seine Arbeit,\nkommt das Problem wieder, und die dauerhafte Lösung ist eine größere Rechengröße\noder leichtere Abfragen. Ein pausiertes Projekt braucht Resume project, das an\nderselben Stelle sitzt. Eine volle Datenbank ist nach einem Neustart immer noch\nvoll, und ein abgelehnter Schlüssel wird weiter abgelehnt.",[10,474,475],{},"Lass den Knopf in Ruhe, solange ein Vorfall läuft, der Projektaktionen nennt. Am 4. September 2026 lieferten Neustarts, Wiederherstellungen und Änderungen an der\nRechengröße in jeder Region Fehler, Supabase bat darum, sie nicht zu versuchen,\nund schaltete sie eine Zeit lang ganz ab.",[23,477,479],{"id":478},"was-kannst-du-während-eines-supabase-ausfalls-tun","Was kannst du während eines Supabase-Ausfalls tun?",[10,481,482],{},"Sehr wenig, und Warten ist die richtige Entscheidung. Den Ausfall muss Supabase\nbeheben, und dein Projekt kommt zurück, ohne dass du es anfasst.",[10,484,485],{},"Damit ist ein Ausfall der einzige Fehler in diesem Artikel, den Warten löst, und\ndeshalb kommt Schritt 2 vor allem, was du hier tust. Einen Stromausfall sitzt du\naus. Eine Stromsperre bleibt, bis du beim Versorger anrufst, und ein pausiertes\nProjekt bleibt aus, bis du es fortsetzt, mit einem Jahr auf der Uhr ab dem Tag,\nan dem es angehalten wurde.",[63,487],{"alt":488,"caption":489,"src":490},"Zwei Zeitlinien. Auf der oberen fällt eine Linie ab und steigt von selbst wieder an. Auf der unteren fällt die Linie ab und bleibt unten. Ein Einschaltknopf darauf öffnet einen gestrichelten Weg zurück nach oben, und die untere Linie läuft weiter bis zu einem durchgestrichenen Zeichen.","Ein Ausfall kommt von selbst zurück. Ein pausiertes Projekt kommt zurück, wenn du es fortsetzt, und nur innerhalb des Jahres.","\u002Fblog\u002Fis-supabase-down-or-your-app\u002Fwait-or-act-1600x560.png",[10,492,493],{},"Was sich lohnt, während du wartest:",[212,495,496,502,508,514],{},[34,497,498,501],{},[37,499,500],{},"Prüf, ob es dich betrifft."," Sieh nach, ob der Vorfall deine Region nennt\noder einen Dienst, den deine App nutzt.",[34,503,504,507],{},[37,505,506],{},"Abonniere diesen Vorfall",", damit dich das Update erreicht, das sein Ende\nmeldet.",[34,509,510,513],{},[37,511,512],{},"Sag es deinen Nutzern."," Eine Zeile dort, wo sie nach dir suchen: Die App\nist von einem Ausfall bei ihrem Datenbankanbieter betroffen und kommt wieder.",[34,515,516,519],{},[37,517,518],{},"Lass das Projekt in Ruhe."," Beim Vorfall vom 4. September riet Supabase\ndavon ab, Projekte anzulegen, Konfigurationen zu ändern, neu zu starten oder\ndie Rechengröße zu ändern, bis der Vorfall gelöst war. Laufende Projekte\nliefen weiter, während diese Aktionen scheiterten.",[10,521,522,523,528],{},"Einen Anspruch wegen der Ausfallzeit hast du außerdem nur mit Enterprise. Die\n",[84,524,527],{"href":525,"rel":526},"https:\u002F\u002Fsupabase.com\u002Fsla",[88],"Verfügbarkeitszusage"," von Supabase, mit Gutschriften\nfür einen Monat unter 99,9 %, gilt allein für Enterprise-Kunden.",[23,530,532],{"id":531},"was-du-vor-dem-nächsten-mal-bereit-haben-solltest","Was du vor dem nächsten Mal bereit haben solltest",[10,534,535],{},"Vier Dinge, und alle gehen leichter an einem Tag, an dem nichts kaputt ist:",[212,537,538,544,557,563],{},[34,539,540,543],{},[37,541,542],{},"Deine Region, aufgeschrieben"," neben der Adresse deines Projekts, und ein\nAbo der Statusseite.",[34,545,546,549,550,552,553,556],{},[37,547,548],{},"Deine App auf dem Publishable Key."," Supabase schafft die alten Schlüssel\n",[95,551,402],{}," und ",[95,554,555],{},"service_role"," bis Ende 2026 ab, und eine App, die noch einen davon\nschickt, fängt sich 401-Fehler ein, sobald sie weg sind.",[34,558,559,562],{},[37,560,561],{},"Eine Kopie deiner Datenbank außerhalb deines Supabase-Kontos."," Ausfall,\nPause und Einschränkung passieren alle innerhalb von Supabase, und eine Kopie,\ndie woanders liegt, erreichen sie nicht. Im Gratis-Tarif hält Supabase keine\nKopie für dich vor.",[34,564,565,568],{},[37,566,567],{},"Etwas, das bemerkt, wenn deine App nicht mehr antwortet",", und es dir sagt,\nbevor ein Kunde es tun muss.",[23,570,572],{"id":571},"wo-reeve-passt","Wo Reeve passt",[10,574,575],{},[37,576,577],{},"Reeve Monitor überwacht die Adresse, die deine Besucher laden. Reeve Care\nverbindet sich außerdem mit der Supabase-Datenbank dahinter und bewahrt eine\nKopie davon außerhalb deines Supabase-Kontos auf.",[212,579,580,586,592,598],{},[34,581,582,585],{},[37,583,584],{},"Monitor prüft die Adresse deiner App alle 60 Sekunden"," von außen und\nschickt dir eine E-Mail, wenn sie nicht mehr antwortet, und eine, wenn sie\nwieder da ist. Außerdem führt es jede Stunde alle neun unserer\nSicherheitsprüfungen erneut aus, für bis zu drei Apps.",[34,587,588,591],{},[37,589,590],{},"Care verbindet sich selbst mit deiner Supabase-Datenbank",", um eine Kopie zu\nziehen, täglich bei Care und öfter bei den Tarifen darüber. Eine Nacht, in der\ndie Datenbank nicht antwortet, ist eine Kopie, die nicht gezogen werden\nkonnte, und du bekommst eine E-Mail, die sagt, was passiert ist.",[34,593,594,597],{},[37,595,596],{},"Die Kopie liegt außerhalb deines Supabase-Kontos",", verschlüsselt, und sie\nwird zurückgelesen, bevor sie zählt, sodass eine Pause oder eine Einschränkung\ndeine letzte gute Kopie dort lässt, wo du sie erreichst.",[34,599,600,603],{},[37,601,602],{},"Wiederherstellen ist ein Knopf",", und vorher wird ein Schnappschuss des\naktuellen Zustands angelegt, sodass die Wiederherstellung ihr eigenes\nRückgängig hat.",[10,605,606,607,611,612,616],{},"Was jeder Tarif abdeckt, steht auf der ",[84,608,610],{"href":609},"\u002Fpricing","Preisseite",", und die Kopie,\ndie Prüfung und die Wiederherstellung sind Schritt für Schritt auf der ",[84,613,615],{"href":614},"\u002Fsupabase-backups","Seite zu\nSupabase-Backups"," gezeichnet.",[23,618,620],{"id":619},"was-jetzt-zu-tun-ist","Was jetzt zu tun ist",[622,623,624],"key-takeaways",{},[212,625,626,629,632,635,638,641],{},[34,627,628],{},"Such die Region deines Projekts auf der Seite Infrastructure in den Projekteinstellungen heraus und abonniere die Statusseite von Supabase.",[34,630,631],{},"Wenn deine App leer bleibt, prüf der Reihe nach: die Statusseite, deine Projektliste auf Paused, ob Seiten laden, während Speichern scheitert, und die Statuscodes im Network-Tab deines Browsers.",[34,633,634],{},"Ist das Projekt pausiert, setz es heute fort. Warten verbraucht nur das Jahr, das du hast.",[34,636,637],{},"Kommen Anfragen mit 401 zurück, lies die Meldung, bevor du irgendetwas änderst. Schlüssel, Tabelle und Sitzung haben jeweils eine andere Lösung.",[34,639,640],{},"Lass das Projekt während eines echten Ausfalls in Ruhe: keine Neustarts, Wiederherstellungen oder Upgrades, bis der Vorfall gelöst ist.",[34,642,643,644,646],{},"Stell deine App auf den Schlüssel ",[95,645,416],{}," um und bewahr eine Kopie deiner Datenbank außerhalb von Supabase auf, solange nichts kaputt ist.",[10,648,649,650,134],{},"Bevor du diesen Tab schließt, öffne die Infrastructure-Einstellungen deines\nProjekts, schreib den Regionscode neben seine Adresse und abonniere die\nStatusseite. Stellt sich heraus, dass der leere Bildschirm heute eine Pause war,\n",[84,651,652],{"href":132},"findest du hier die nächsten Schritte",{"title":654,"searchDepth":655,"depth":655,"links":656},"",3,[657,659,665,666,667,668,669,670],{"id":25,"depth":658,"text":26},2,{"id":73,"depth":658,"text":74,"children":660},[661,662,663,664],{"id":78,"depth":655,"text":79},{"id":125,"depth":655,"text":126},{"id":137,"depth":655,"text":138},{"id":191,"depth":655,"text":192},{"id":379,"depth":658,"text":380},{"id":465,"depth":658,"text":466},{"id":478,"depth":658,"text":479},{"id":531,"depth":658,"text":532},{"id":571,"depth":658,"text":572},{"id":619,"depth":658,"text":620},"Sicherheitsgrundlagen","\u002Fblog\u002Fis-supabase-down-or-your-app\u002Fcover-1200x630.png","Eine Straße bei Nacht mit erleuchteten Häusern, und davor ein Gebäude, in dem kein einziges Fenster brennt.","Ist Supabase down oder liegt es an deiner App? Ein pausiertes Projekt, eine volle Datenbank und ein eigener Fehler sehen gleich aus. Vier Prüfungen helfen.",false,"md",[678,681,684,687,689,692],{"q":679,"a":680},"Ist Supabase gerade down?","Sieh auf status.supabase.com nach. Dort meldet Supabase seine eigenen Vorfälle, Dienst für Dienst und Region für Region. Such zuerst die Region deines Projekts heraus: Sie steht auf der Seite Infrastructure in den Projekteinstellungen, mit einem Code wie eu-west-1. Nennt die Statusseite weder diese Region noch einen Dienst, den deine App nutzt, hat Supabase kein Problem gemeldet, und die nächste Stelle zum Nachsehen ist dein eigenes Projekt.",{"q":682,"a":683},"Meine App ist kaputt, aber die Statusseite von Supabase ist grün. Was jetzt?","Sieh dir dein eigenes Projekt an. Prüf in der Projektliste im Supabase-Dashboard, ob dort Paused steht, und dann, ob das Projekt als unhealthy markiert, schreibgeschützt oder eingeschränkt ist. Sieht all das normal aus, öffne deine App, drück F12, wähl den Tab Network und lade neu. Eine Anfrage an dein Projekt, die mit 200 zurückkommt, heißt: Supabase hat geantwortet, und der Fehler liegt auf deiner Seite.",{"q":685,"a":686},"Ist ein pausiertes Supabase-Projekt dasselbe wie ein Ausfall?","Nein, und die beiden verlangen entgegengesetzte Reaktionen. Ein Ausfall liegt bei Supabase und endet, wenn sie ihn beheben, also ist Warten richtig. Eine Pause heißt, dass Supabase dein Projekt angehalten hat, meist ein kostenloses, das eine Woche ohne Aktivität war, und nichts ändert sich, bis du es im Dashboard fortsetzt. Dafür hast du ein Jahr. Danach bietet das Dashboard stattdessen einen Download an, und zurück online kommst du nur mit einem neuen Projekt unter einer neuen Adresse.",{"q":380,"a":688},"Ein 401 heißt, dass Supabase geantwortet und den Absender abgewiesen hat. Deine App schickt vielleicht einen Schlüssel, den das Projekt nicht mehr annimmt, etwa weil der alte anon-Schlüssel abgeschaltet wurde oder ein pausiertes Projekt ohne ihn wiederhergestellt wurde. Eine Tabelle kann mit permission denied ablehnen. Oder Sitzungen werden abgelehnt: Vom 14. August bis 29. September 2026 passierte genau das bei einem Teil der neuen Projekte, und die Lösung ist Upgrade project auf der Seite General.",{"q":690,"a":691},"Wie starte ich mein Supabase-Projekt neu?","Öffne das Projekt im Supabase-Dashboard und geh zu Project Settings, dann General. Unter Project availability startet Restart project alles neu, und der Pfeil daneben bietet Fast database reboot an, das nur die Datenbank neu startet, mit kürzerer Ausfallzeit. Rechne in beiden Fällen mit ein paar Minuten offline. Ein Neustart hilft einem überlasteten oder als unhealthy markierten Projekt. Ein pausiertes Projekt braucht Resume auf derselben Seite, und eine volle Datenbank braucht Platz.",{"q":693,"a":694},"Kann ich während eines Supabase-Ausfalls etwas tun?","Sehr wenig, und Warten ist die richtige Entscheidung. Prüf, ob der Vorfall deine Region nennt, abonniere seine Updates und sag deinen Nutzern, was sie gerade sehen. Lass Neustarts, Wiederherstellungen, Upgrades und Änderungen an der Rechengröße, bis er gelöst ist: Bei einem plattformweiten Vorfall am 4. September 2026 riet Supabase genau davon ab. Die Verfügbarkeitszusage mit Gutschriften gilt nur für Enterprise-Kunden.","\u002Fblog\u002Fis-supabase-down-or-your-app\u002Fcard-800x500.png",[697,698,699,700,701,702,703,704,705],"ist supabase down","supabase down","supabase störung","supabase status","supabase funktioniert nicht","supabase 401 fehler","supabase projekt neu starten","supabase projekt unhealthy","app verbindet sich nicht mit supabase",{},true,"Ist Supabase down oder liegt es an deiner App?","\u002Fblog\u002Fis-supabase-down-or-your-app","2026-10-01",{"title":5,"description":674},"blog\u002Fis-supabase-down-or-your-app",[714,715,716],"Ist Supabase down? Vielleicht. Ein pausiertes Projekt, ein Projekt an einem Limit und ein Fehler in deiner eigenen App erzeugen denselben leeren Bildschirm.","Die Statusseite von Supabase beantwortet nur die erste Frage. Deine Projektliste und die Seiten deines Projekts beantworten die nächsten beiden, und die Statuscodes in deinem Browser klären die letzte.","Ein Ausfall endet ohne dich. Ein pausiertes Projekt bleibt aus, bis du es fortsetzt, und nach einem Jahr ist diese Möglichkeit weg.","z9KTKUQDyslbjmdBPWi2IgSx-71hvqlkYVBg7Ctz7hY",[719,725,731,737,743,749,755,761,767,773,779,780,786,791,798,804,810,814,820,826,832,838,844,850,856,862,868,874,880,886,892,897,903,909,915,921,927,933,939,945,951,957,963,969,974,980,986,992,998,1004,1010,1016,1022,1028,1034,1039,1044,1050,1056,1061,1067],{"path":720,"title":721,"description":722,"published":723,"category":671,"image":724,"draft":675},"\u002Fblog\u002Fstorage-upload-violates-row-level-security","\"Row-level security policy for table objects\" beim Upload","\"New row violates row-level security policy for table objects\" heißt: Deinem Upload fehlt eine insert-Regel. Ein öffentlicher Bucket fügt keine hinzu.","2026-10-11","\u002Fblog\u002Fstorage-upload-violates-row-level-security\u002Fcard-800x500.png",{"path":726,"title":727,"description":728,"published":729,"category":671,"image":730,"draft":675},"\u002Fblog\u002Fbase44-security-scan","Base44 Security Scan: das, was nur er sehen kann","Der Base44 Security Scan prüft sieben Arten von Problemen von innen. Hier ist die Hälfte, die er liest und sonst niemand, und die Hälfte, die er nie ansieht.","2026-10-10","\u002Fblog\u002Fbase44-security-scan\u002Fcard-800x500.png",{"path":732,"title":733,"description":734,"published":735,"category":671,"image":736,"draft":675},"\u002Fblog\u002Fapi-key-leaked-what-to-do","Dein API-Key wurde geleakt. Die richtige Reihenfolge","Ein API-Key wurde geleakt und du weißt nicht, was zuerst zu tun ist. Nicht jeder Key im Frontend ist ein Leck, und die Reihenfolge zählt mehr als das Tempo.","2026-10-09","\u002Fblog\u002Fapi-key-leaked-what-to-do\u002Fcard-800x500.png",{"path":738,"title":739,"description":740,"published":741,"category":671,"image":742,"draft":675},"\u002Fblog\u002Finfinite-recursion-in-policy-for-relation","\"Infinite recursion detected in policy\" ohne RLS abzuschalten","\"Infinite recursion detected in policy for relation\" heißt: Deine Policy hat die Tabelle gefragt, die sie schützt. So brichst du den Kreis.","2026-10-08","\u002Fblog\u002Finfinite-recursion-in-policy-for-relation\u002Fcard-800x500.png",{"path":744,"title":745,"description":746,"published":747,"category":671,"image":748,"draft":675},"\u002Fblog\u002Fno-api-key-found-in-request","\"No API key found in request\" in Supabase, und die falsche Lösung","\"No API key found in request\" heißt, deine Supabase-Anfrage kam ohne Schlüssel an. Die meisten Antworten zeigen stattdessen auf deine Datenbankregeln.","2026-10-07","\u002Fblog\u002Fno-api-key-found-in-request\u002Fcard-800x500.png",{"path":750,"title":751,"description":752,"published":753,"category":671,"image":754,"draft":675},"\u002Fblog\u002Fis-base44-safe","Ist Base44 sicher? Was 5.442 echte Base44-Apps zeigten","Ist Base44 sicher? Wir haben 5.442 laufende Base44-Apps mit neun Checks geprüft. Fast alle bekamen ein B, aus Gründen, die der Inhaber nie gewählt hat.","2026-10-06","\u002Fblog\u002Fis-base44-safe\u002Fcard-800x500.png",{"path":756,"title":757,"description":758,"published":759,"category":671,"image":760,"draft":675},"\u002Fblog\u002Fmove-a-secret-to-an-edge-function","API-Schlüssel verstecken: ab in eine Supabase Edge Function","Einen API-Schlüssel verstecken heißt, ihn aus dem Browser zu nehmen. Eine Supabase Edge Function ist der kleinste Ort dafür, und zwei Schritte zählen mehr.","2026-10-05","\u002Fblog\u002Fmove-a-secret-to-an-edge-function\u002Fcard-800x500.png",{"path":762,"title":763,"description":764,"published":765,"category":671,"image":766,"draft":675},"\u002Fblog\u002Fenv-file-exposed-on-your-server","Ist deine .env-Datei öffentlich? Zwölf Pfade zum Prüfen","Ist deine .env-Datei auf deinem eigenen Webserver öffentlich? Zwölf Adressen sagen es dir, und ein Treffer heißt: alles darin ist längst öffentlich.","2026-10-04","\u002Fblog\u002Fenv-file-exposed-on-your-server\u002Fcard-800x500.png",{"path":768,"title":769,"description":770,"published":771,"category":671,"image":772,"draft":675},"\u002Fblog\u002Fis-v0-safe","v0-Sicherheit: alle 1.790 gescannten v0-Apps bekamen ein A","v0-Sicherheit, gemessen an 1.790 laufenden v0-Apps: Jede bekam ein A. Nur 17 nannten eine Datenbank, und genau das misst das A vor allem.","2026-10-03","\u002Fblog\u002Fis-v0-safe\u002Fcard-800x500.png",{"path":774,"title":775,"description":776,"published":777,"category":671,"image":778,"draft":675},"\u002Fblog\u002Fis-bolt-safe","Ist Bolt sicher? Was 1.123 echte Bolt-Apps zeigten","Ist Bolt sicher? Wir haben 1.123 laufende Bolt-Apps mit neun Checks geprüft. Das Hosting war sauber. Die Funde waren Schlüssel und offene Tabellen in den Apps.","2026-10-02","\u002Fblog\u002Fis-bolt-safe\u002Fcard-800x500.png",{"path":709,"title":5,"description":674,"published":710,"category":671,"image":695,"draft":675},{"path":781,"title":782,"description":783,"published":784,"category":671,"image":785,"draft":675},"\u002Fblog\u002Fdoes-supabase-encrypt-my-data","Verschlüsselt Supabase meine Daten? Ja. Wovor das schützt","Verschlüsselt Supabase Daten? Ja: AES-256 im Ruhezustand, TLS bei der Übertragung, SOC 2 und ISO 27001. Was jedes abdeckt und welches Leck keines stoppt.","2026-09-30","\u002Fblog\u002Fdoes-supabase-encrypt-my-data\u002Fcard-800x500.png",{"path":154,"title":787,"description":788,"published":789,"category":671,"image":790,"draft":675},"Supabase Gratis-Tarif: die Limits und was an jedem passiert","Die Limits des Supabase-Gratis-Tarifs: 500 MB Datenbank, 5 GB Egress und keine Backups. Was an jeder Grenze passiert und was $25 für Pro ändern.","2026-09-29","\u002Fblog\u002Fsupabase-free-plan-limits\u002Fcard-800x500.png",{"path":792,"title":793,"description":794,"published":795,"category":796,"image":797,"draft":675},"\u002Fblog\u002Ftest-your-supabase-backup","Teste dein Supabase-Backup, bevor du es brauchst","So testest du dein Supabase-Backup: in ein Übungsprojekt einspielen, Zeilen zählen, anmelden und die Zeile suchen, die einer abgeschnittenen Datei fehlt.","2026-09-28","Backups","\u002Fblog\u002Ftest-your-supabase-backup\u002Fcard-800x500.png",{"path":799,"title":800,"description":801,"published":802,"category":796,"image":803,"draft":675},"\u002Fblog\u002Fsupabase-backup-github-action","Kostenloses Supabase-Backup per GitHub Action, mit Haken","Eine Supabase-Backup-GitHub-Action kostet nichts und passt für viele Apps. Der Workflow, der richtige Connection String und das Egress pro Lauf.","2026-09-27","\u002Fblog\u002Fsupabase-backup-github-action\u002Fcard-800x500.png",{"path":805,"title":806,"description":807,"published":808,"category":796,"image":809,"draft":675},"\u002Fblog\u002Fdownload-your-supabase-backup","Warum du dein Supabase-Backup nicht herunterladen kannst","Dein Supabase-Backup kannst du auf aktuellen Projekten nicht herunterladen, weil die Tageskopie physisch ist. Wie du es prüfst und selbst eine Kopie hältst.","2026-09-26","\u002Fblog\u002Fdownload-your-supabase-backup\u002Fcard-800x500.png",{"path":434,"title":811,"description":812,"published":808,"category":671,"image":813,"draft":675},"Supabase \"permission denied for table\": der fehlende Grant","Ab 30. Oktober antwortet eine neue Supabase-Tabelle mit \"permission denied for table\", bis du Zugriff erteilst. Der Grant aus der E-Mail ist die halbe Lösung.","\u002Fblog\u002Fsupabase-permission-denied-for-table\u002Fcard-800x500.png",{"path":815,"title":816,"description":817,"published":818,"category":671,"image":819,"draft":675},"\u002Fblog\u002Fopen-api-endpoint-exposed","Ist ein offener API-Endpunkt ein Sicherheitsproblem? Sieh ins JSON","Dein Scan hat einen offenen API-Endpunkt gemeldet. Ob das zählt, hängt davon ab, was zurückkam, und die meisten hier gehörten der Plattform.","2026-09-25","\u002Fblog\u002Fopen-api-endpoint-exposed\u002Fcard-800x500.png",{"path":821,"title":822,"description":823,"published":824,"category":671,"image":825,"draft":675},"\u002Fblog\u002Flovable-security-scan","Lovable Security Scan: das Eine, was er nicht beweist","Lovable Security Scan: was Quick Scan und Deep Scan prüfen, wann welcher läuft, und das Eine, was kein Scan von innen beweisen kann.","2026-09-24","\u002Fblog\u002Flovable-security-scan\u002Fcard-800x500.png",{"path":827,"title":828,"description":829,"published":830,"category":796,"image":831,"draft":675},"\u002Fblog\u002Fsupabase-backup-auth-users","Warum in deinem Supabase-Dump keine Nutzer stehen","Führe supabase db dump allein aus und du bekommst die Form deiner Datenbank und keine einzige Zeile, und das auth-Schema mit deinen Nutzern fehlt ganz.","2026-09-23","\u002Fblog\u002Fsupabase-backup-auth-users\u002Fcard-800x500.png",{"path":833,"title":834,"description":835,"published":836,"category":671,"image":837,"draft":675},"\u002Fblog\u002Fdomain-and-certificate-expiry","Domain abgelaufen, Website offline: was jetzt passiert","Deine Domain ist abgelaufen und deine Website ist offline. Welche Frist jetzt läuft, warum das Zertifikat das kleinere Problem ist, und wie du beides prüfst.","2026-09-22","\u002Fblog\u002Fdomain-and-certificate-expiry\u002Fcard-800x500.png",{"path":839,"title":840,"description":841,"published":842,"category":671,"image":843,"draft":675},"\u002Fblog\u002Fis-lovable-safe","Ist Lovable sicher? Was 18.554 echte Lovable-Apps zeigten","Ist Lovable sicher? Wir haben 18.554 laufende Lovable-Apps mit neun Checks geprüft. Die Plattform war die sauberste von fünf. Die Funde saßen in den Apps.","2026-09-21","\u002Fblog\u002Fis-lovable-safe\u002Fcard-800x500.png",{"path":845,"title":846,"description":847,"published":848,"category":671,"image":849,"draft":675},"\u002Fblog\u002Fvibe-coded-app-security-checklist","Die Sicherheits-Checkliste für Vibe-Coding, in neun Prüfungen","Eine Sicherheits-Checkliste für Vibe-Coding mit neun Punkten, die jeder von außen an deiner Live-App nachprüfen kann, jeder mit einem Test in einer Zeile.","2026-09-20","\u002Fblog\u002Fvibe-coded-app-security-checklist\u002Fcard-800x500.png",{"path":851,"title":852,"description":853,"published":854,"category":671,"image":855,"draft":675},"\u002Fblog\u002Fstripe-secret-key-in-frontend","Ein geheimer Stripe-Schlüssel im Frontend kann Geld bewegen","Ein geheimer Stripe-Schlüssel im Frontend kann erstatten, abbuchen und jeden Kundendatensatz lesen, den du hast. Dein pk_live_-Schlüssel gehört dorthin.","2026-09-19","\u002Fblog\u002Fstripe-secret-key-in-frontend\u002Fcard-800x500.png",{"path":857,"title":858,"description":859,"published":860,"category":671,"image":861,"draft":675},"\u002Fblog\u002Fvite-and-next-public-env-vars","Vite-Env-Variablen offengelegt: der Präfix heißt veröffentlichen","Vite-Env-Variablen offengelegt: Deine App hat getan, was der Präfix verlangt. VITE_ und NEXT_PUBLIC_ heißen veröffentlichen, und die KI kannte den Preis nie.","2026-09-18","\u002Fblog\u002Fvite-and-next-public-env-vars\u002Fcard-800x500.png",{"path":863,"title":864,"description":865,"published":866,"category":671,"image":867,"draft":675},"\u002Fblog\u002Fbase44-source-maps","Base44-Sicherheit: was ein Scan meldet und was du ändern kannst","Base44-Sicherheit auf 5.438 gescannten Apps: Drei Befunde auf fast jeder gehören der Plattform, die Source Map ist das Base44-Badge, und deine Liste ist kurz.","2026-09-17","\u002Fblog\u002Fbase44-source-maps\u002Fcard-800x500.png",{"path":869,"title":870,"description":871,"published":872,"category":671,"image":873,"draft":675},"\u002Fblog\u002Fis-cursor-ai-safe","Ist Cursor AI sicher? Editor, Code und die App, die du veröffentlichst","Ist Cursor AI sicher? Drei Fragen in einer Suche: was Cursor behält, was sein Code falsch macht und ob deine veröffentlichte App offen steht.","2026-09-16","\u002Fblog\u002Fis-cursor-ai-safe\u002Fcard-800x500.png",{"path":875,"title":876,"description":877,"published":878,"category":671,"image":879,"draft":675},"\u002Fblog\u002Fis-replit-safe","Ist Replit sicher? Was wir in 3.042 Replit-Apps gefunden haben","Ist Replit sicher? Wir haben 3.042 laufende Replit-Apps mit neun externen Checks geprüft. Die Funde saßen in der veröffentlichten App, nicht im Hosting.","2026-09-15","\u002Fblog\u002Fis-replit-safe\u002Fcard-800x500.png",{"path":881,"title":882,"description":883,"published":884,"category":796,"image":885,"draft":675},"\u002Fblog\u002Fsupabase-storage-backup","Supabase Storage Backup: deine Datenbankkopie hat keine Dateien","Ein Supabase Storage Backup ist eine eigene Aufgabe. Datenbank-Backups enthalten die Liste deiner Dateien und keine davon, also bleibt jeder Upload kaputt.","2026-09-14","\u002Fblog\u002Fsupabase-storage-backup\u002Fcard-800x500.png",{"path":887,"title":888,"description":889,"published":890,"category":796,"image":891,"draft":675},"\u002Fblog\u002Fsupabase-point-in-time-recovery","Supabase Point-in-Time Recovery: Kosten und Grenzen","Supabase Point-in-Time Recovery spult deine Datenbank auf jede Sekunde der letzten Woche zurück. $100 im Monat zusätzlich zu Pro, und nur die Datenbank.","2026-09-13","\u002Fblog\u002Fsupabase-point-in-time-recovery\u002Fcard-800x500.png",{"path":132,"title":893,"description":894,"published":895,"category":796,"image":896,"draft":675},"Supabase-Projekt pausiert? Deine Daten sind noch da","Supabase hat dein Projekt nach einer Woche ohne Aktivität pausiert. Gelöscht ist nichts, Wiederherstellen steht neben dem Namen, und du hast ein Jahr.","2026-09-12","\u002Fblog\u002Fsupabase-project-paused-recover\u002Fcard-800x500.png",{"path":898,"title":899,"description":900,"published":901,"category":671,"image":902,"draft":675},"\u002Fblog\u002Fsafest-ai-app-builder","Welcher KI-App-Builder ist am sichersten? 30.998 Apps im Test","Welcher KI-App-Builder ist am sichersten? Wir haben 30.998 aktive Apps von Lovable, Base44, Replit, v0 und Bolt gescannt. Der Builder entscheidet das nicht.","2026-09-11","\u002Fblog\u002Fsafest-ai-app-builder\u002Fcard-800x500.png",{"path":904,"title":905,"description":906,"published":907,"category":671,"image":908,"draft":675},"\u002Fblog\u002Fenable-rls-on-every-supabase-table","Row Level Security für jede Supabase-Tabelle aktivieren und prüfen","Row Level Security in Supabase ohne Policy sperrt eine Tabelle komplett. Eine Policy ohne den Schalter bringt gar nichts. Hier ist das SQL, und der Test.","2026-09-10","\u002Fblog\u002Fenable-rls-on-every-supabase-table\u002Fcard-800x500.png",{"path":910,"title":911,"description":912,"published":913,"category":671,"image":914,"draft":675},"\u002Fblog\u002Fsupabase-rls-disabled-in-public","Supabase \"RLS disabled in public\": was die Warnung übersieht","Supabase meldet \"RLS disabled in public\" als Fehler. Zur Lese-Policy, die deine Tabelle genauso offen lässt, sagt der Advisor gar nichts.","2026-09-09","\u002Fblog\u002Fsupabase-rls-disabled-in-public\u002Fcard-800x500.png",{"path":916,"title":917,"description":918,"published":919,"category":671,"image":920,"draft":675},"\u002Fblog\u002Frotate-supabase-service-role-key","Geleakten Supabase-service_role-Schlüssel richtig tauschen","Supabase sagt: erst das Leck schließen. Andere Anleitungen: sofort tauschen. Was richtig ist, hängt davon ab, wohin dein service_role-Schlüssel gelangt ist.","2026-09-08","\u002Fblog\u002Frotate-supabase-service-role-key\u002Fcard-800x500.png",{"path":922,"title":923,"description":924,"published":925,"category":671,"image":926,"draft":675},"\u002Fblog\u002Fvibe-coding-security-scanners-compared","Vibe-Coding-Security-Scanner im Vergleich, unserer eingeschlossen","Der beste Vibe-Coding-Security-Scanner hängt an drei Fragen, die keine Funktionsliste beantwortet. Zehn Tools im Vergleich, mit Preisen und unseren Lücken.","2026-09-07","\u002Fblog\u002Fvibe-coding-security-scanners-compared\u002Fcard-800x500.png",{"path":928,"title":929,"description":930,"published":931,"category":671,"image":932,"draft":675},"\u002Fblog\u002Fsupabase-security-checker","Supabase Security Checker: die fünf Prüfungen selbst machen","Ein Supabase Security Checker liest deine veröffentlichte App statt deiner Projekteinstellungen. Hier sind die fünf Prüfungen und wie du jede selbst ausführst.","2026-09-06","\u002Fblog\u002Fsupabase-security-checker\u002Fcard-800x500.png",{"path":934,"title":935,"description":936,"published":937,"category":671,"image":938,"draft":675},"\u002Fblog\u002Fvibe-coding-security-scanner","Vibe-Coding-Security-Scanner: was ein URL-Scan übersieht","Ein Vibe-Coding-Security-Scanner liest deine laufende App von außen. Was das abdeckt, die vier Dinge, die er nicht sehen kann, und wie du das Ergebnis liest.","2026-09-05","\u002Fblog\u002Fvibe-coding-security-scanner\u002Fcard-800x500.png",{"path":940,"title":941,"description":942,"published":943,"category":671,"image":944,"draft":675},"\u002Fblog\u002Fmissing-security-headers","Fehlende Sicherheitsheader: wann sie wirklich zählen","Fehlende Sicherheitsheader ist unser häufigster Befund. Wogegen sie schützen, und wann sie die unwichtigste Zeile in deinem Bericht sind.","2026-09-04","\u002Fblog\u002Fmissing-security-headers\u002Fcard-800x500.png",{"path":946,"title":947,"description":948,"published":949,"category":671,"image":950,"draft":675},"\u002Fblog\u002Fopenai-api-key-exposed-in-frontend","Dein OpenAI-API-Schlüssel liegt im Frontend. Tausch ihn aus.","Ein OpenAI-API-Schlüssel im Frontend lässt sich an keine Domain binden. Tausch ihn heute, leg den Aufruf hinter deinen Server und begrenze das Budget.","2026-09-03","\u002Fblog\u002Fopenai-api-key-exposed-in-frontend\u002Fcard-800x500.png",{"path":952,"title":953,"description":954,"published":955,"category":671,"image":956,"draft":675},"\u002Fblog\u002Fwhat-secrets-leak-from-vibe-coded-apps","API-Schlüssel im Frontend: was 30.998 Apps wirklich ausliefern","Ein API-Schlüssel im Frontend ist meistens ein Google-Maps-Schlüssel. Wir haben 30.998 aktive Vibe-Coding-Apps gescannt und gezählt, was wirklich austritt.","2026-09-02","\u002Fblog\u002Fwhat-secrets-leak-from-vibe-coded-apps\u002Fcard-800x500.png",{"path":958,"title":959,"description":960,"published":961,"category":796,"image":962,"draft":675},"\u002Fblog\u002Fsupabase-backup-tools-compared","Supabase-Backup-Tools im Vergleich, unseres eingeschlossen","Vier Arten von Supabase-Backup-Tool, was jedes wirklich kopiert und wann eine kostenlose GitHub Action jeden Anbieter schlägt, uns eingeschlossen.","2026-09-01","\u002Fblog\u002Fsupabase-backup-tools-compared\u002Fcard-800x500.png",{"path":964,"title":965,"description":966,"published":967,"category":671,"image":968,"draft":675},"\u002Fblog\u002Freplit-secrets-explained","Secrets in Replit nutzen, und was trotzdem veröffentlicht wird","Secrets in Replit nutzen: anlegen, auslesen und die zwei Gründe beheben, warum undefined zurückkommt. Dazu die Schlüssel, die das Werkzeug nicht schützt.","2026-08-31","\u002Fblog\u002Freplit-secrets-explained\u002Fcard-800x500.png",{"path":460,"title":970,"description":971,"published":972,"category":796,"image":973,"draft":675},"Supabase Gratis-Tarif: Backup ohne Terminal selbst machen","Im Supabase Gratis-Tarif gibt es keine Backups, die Kopie musst du selbst machen. Wie das im Dashboard geht und was der CSV-Weg auslässt.","2026-08-30","\u002Fblog\u002Fback-up-supabase-free-tier\u002Fcard-800x500.png",{"path":975,"title":976,"description":977,"published":978,"category":671,"image":979,"draft":675},"\u002Fblog\u002Fis-supabase-secure","Ist Supabase sicher? Ja. Dein Projekt ist eine eigene Frage","Ist Supabase sicher? Die Plattform ist auditiert, verschlüsselt und pentestet. Supabase schreibt selbst auf, wo das aufhört und deine Einstellungen anfangen.","2026-08-29","\u002Fblog\u002Fis-supabase-secure\u002Fcard-800x500.png",{"path":981,"title":982,"description":983,"published":984,"category":671,"image":985,"draft":675},"\u002Fblog\u002Fwhere-to-find-supabase-api-keys","Wo du deine Supabase API-Keys findest: anon, service_role, URL","Projekt-URL, anon-Schlüssel und service_role-Schlüssel liegen auf einer Seite im Dashboard. Wo sie ist, und welcher der vier Werte in deine App gehört.","2026-08-28","\u002Fblog\u002Fwhere-to-find-supabase-api-keys\u002Fcard-800x500.png",{"path":987,"title":988,"description":989,"published":990,"category":671,"image":991,"draft":675},"\u002Fblog\u002Fnew-row-violates-row-level-security-policy","New row violates row-level security policy in Supabase: was jetzt?","\"New row violates row-level security policy\" heißt, Supabase hat einen Schreibvorgang abgelehnt. Die schnelle Lösung öffnet die Tabelle wieder für alle.","2026-08-27","\u002Fblog\u002Fnew-row-violates-row-level-security-policy\u002Fcard-800x500.png",{"path":993,"title":994,"description":995,"published":996,"category":671,"image":997,"draft":675},"\u002Fblog\u002Fcors-wildcard-security-risk","Ist eine CORS-Wildcard ein Sicherheitsrisiko? Meist nicht.","Ist eine CORS-Wildcard ein Sicherheitsrisiko? Meist ist sie die Voreinstellung deines Builders und gibt nichts preis, was dein Server nicht ohnehin herausgab.","2026-08-26","\u002Fblog\u002Fcors-wildcard-security-risk\u002Fcard-800x500.png",{"path":999,"title":1000,"description":1001,"published":1002,"category":796,"image":1003,"draft":675},"\u002Fblog\u002Fsupabase-branching-is-not-a-backup","Supabase Branching ist kein Backup. Es geht nur vorwärts.","Warum Supabase Branching kein Backup ist: Ein Branch startet ohne deine Daten, und ein Merge bringt nur das Schema. Wofür es gut ist und was stattdessen hilft.","2026-08-25","\u002Fblog\u002Fsupabase-branching-is-not-a-backup\u002Fcard-800x500.png",{"path":1005,"title":1006,"description":1007,"published":1008,"category":796,"image":1009,"draft":675},"\u002Fblog\u002Fhow-to-restore-a-supabase-backup","Supabase-Backup wiederherstellen, und was danach kaputt ist","Wie du ein Supabase-Backup aus dem Dashboard oder aus einer Dump-Datei wiederherstellst, was ersetzt wird und warum die App danach kaputt sein kann.","2026-08-24","\u002Fblog\u002Fhow-to-restore-a-supabase-backup\u002Fcard-800x500.png",{"path":1011,"title":1012,"description":1013,"published":1014,"category":671,"image":1015,"draft":675},"\u002Fblog\u002Fsupabase-storage-bucket-public","Dein Supabase-Storage-Bucket ist öffentlich. Ist das ein Problem?","Ein öffentlicher Supabase-Storage-Bucket heißt: Wer die URL einer Datei hat, kann sie öffnen. Er heißt nicht, dass jemand den Inhalt auflisten darf.","2026-08-23","\u002Fblog\u002Fsupabase-storage-bucket-public\u002Fcard-800x500.png",{"path":1017,"title":1018,"description":1019,"published":1020,"category":671,"image":1021,"draft":675},"\u002Fblog\u002Fgoogle-api-key-exposed-in-frontend","Ist ein Google-API-Schlüssel im Frontend ein Problem?","Ein Google-API-Schlüssel im Frontend ist der Fund unseres Scanners Nummer eins, und meistens unbedenklich. Eine kostenlose Einstellung entscheidet darüber.","2026-08-22","\u002Fblog\u002Fgoogle-api-key-exposed-in-frontend\u002Fcard-800x500.png",{"path":1023,"title":1024,"description":1025,"published":1026,"category":796,"image":1027,"draft":675},"\u002Fblog\u002Fai-agent-deleted-my-database","Ein KI-Agent hat meine Supabase-Daten gelöscht. Was hole ich zurück?","Ein KI-Agent hat Daten aus deiner Datenbank gelöscht. Was du zurückholst, stand schon vorher fest, und die nächsten Minuten entscheiden über den Rest.","2026-08-21","\u002Fblog\u002Fai-agent-deleted-my-database\u002Fcard-800x500.png",{"path":1029,"title":1030,"description":1031,"published":1032,"category":671,"image":1033,"draft":675},"\u002Fblog\u002Fcan-anyone-read-your-supabase-database","Kann jeder deine Supabase-Datenbank lesen? 3.680 Apps im Test","Kann jeder deine Supabase-Datenbank ohne Login lesen? Wir haben 30.998 aktive Apps aus KI-Buildern gescannt und gemessen, wie oft die Antwort ja lautet.","2026-08-18","\u002Fblog\u002Fcan-anyone-read-your-supabase-database\u002Fcard-800x500.png",{"path":1035,"title":1036,"description":1037,"published":1032,"category":671,"image":1038,"draft":675},"\u002Fblog\u002Fsource-maps-exposed-in-production","Source-Maps öffentlich: deine App veröffentlicht ihren Quellcode","Eine öffentliche Source-Map lässt jeden den Originalcode deiner App lesen, Kommentare inklusive. Der 30-Sekunden-Check, und was wirklich zählt.","\u002Fblog\u002Fsource-maps-exposed-in-production\u002Fcard-800x500.png",{"path":420,"title":1040,"description":1041,"published":1042,"category":671,"image":1043,"draft":675},"Supabases neue API-Schlüssel: welcher gehört in deine App?","Supabase hat anon und service_role durch öffentliche und geheime Schlüssel ersetzt. Welcher gehört in deine App, und welcher nie?","2026-08-12","\u002Fblog\u002Fsupabase-new-api-keys\u002Fcard-800x500.png",{"path":1045,"title":1046,"description":1047,"published":1048,"category":796,"image":1049,"draft":675},"\u002Fblog\u002Fdoes-supabase-back-up-my-database","Sichert Supabase meine Datenbank? Das hängt von deinem Tarif ab.","Sichert Supabase deine Datenbank? Auf bezahlten Tarifen täglich, im Gratis-Tarif gar nicht. So findest du heraus, was du hast und was es nicht abdeckt.","2026-08-11","\u002Fblog\u002Fdoes-supabase-back-up-my-database\u002Fcard-800x500.png",{"path":1051,"title":1052,"description":1053,"published":1054,"category":671,"image":1055,"draft":675},"\u002Fblog\u002Fsupabase-rls-on-but-table-still-public","Supabase Row Level Security ist an. Die Tabelle ist trotzdem offen.","Supabase Row Level Security anzuschalten schützt keine Tabelle. Erst deine Policies tun das, und die, die deine App repariert hat, lässt oft alle herein.","2026-08-10","\u002Fblog\u002Fsupabase-rls-on-but-table-still-public\u002Fcard-800x500.png",{"path":1057,"title":1058,"description":1059,"published":1054,"category":796,"image":1060,"draft":675},"\u002Fblog\u002Fversion-history-is-not-a-backup","Der Versionsverlauf ist kein Backup. Er holt keine Tabelle zurück.","Lovable und Bolt führen einen Versionsverlauf für deinen Code. Deine Datenbank ist ein eigener Dienst, und ein Rücksprung holt deine Daten nicht zurück.","\u002Fblog\u002Fversion-history-is-not-a-backup\u002Fcard-800x500.png",{"path":1062,"title":1063,"description":1064,"published":1065,"category":796,"image":1066,"draft":675},"\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database","Drei Wege, eine Supabase-Datenbank zu sichern, und was fehlt","Das Dashboard, pg_dump und ein verwalteter Dienst. Was jeder Weg wirklich sichert, was er stillschweigend auslässt und welcher den Kontoverlust übersteht.","2026-08-09","\u002Fblog\u002Fthree-ways-to-back-up-a-supabase-database\u002Fcard-800x500.png",{"path":1068,"title":1069,"description":1070,"published":1065,"category":671,"image":1071,"draft":675},"\u002Fblog\u002Fwhich-api-keys-are-safe-in-your-frontend","Welche API-Schlüssel im Frontend sicher sind, und welche nicht","Dein Supabase-anon-Schlüssel darf öffentlich sein. Der service_role-Schlüssel nicht. Er ignoriert jede Regel, die du setzt. So erkennst du den Unterschied.","\u002Fblog\u002Fwhich-api-keys-are-safe-in-your-frontend\u002Fcard-800x500.png",1791705957971]