Backups
Point-in-time recovery do Supabase: preço e limites
O point-in-time recovery do Supabase rebobina seu banco para qualquer segundo da última semana. Custa $100 por mês além do Pro e cobre só o banco.

Em resumo
- O point-in-time recovery do Supabase devolve seu banco de dados a um momento que você escolhe, em vez de à cópia desta madrugada. É um adicional do plano Pro para cima.
- Custa $100 por mês para uma janela de sete dias, e ligar isso também move seu projeto para uma instância de computação maior, cobrada à parte.
- Nenhuma ferramenta de backup de fora consegue oferecer a mesma coisa. O point-in-time recovery se apoia no registro de escrita do banco, que só a plataforma dona do disco consegue ler.
- Ele cobre seu banco de dados. Seus arquivos do Storage ficam fora disso, e um erro que você percebe depois que a janela passou também fica.
Você está no plano Pro do Supabase, alguma coisa deu errado numa hora que você conseguiria anotar, e o backup desta madrugada é mais velho que o erro. Em algum lugar do painel existe uma chave chamada Point in Time Recovery com um preço ao lado, e a pergunta é se esse preço compra o que você acha.
Aqui está a parte que todo panorama achata: o point-in-time recovery e uma cópia que você guarda são dois produtos diferentes, e ligar o primeiro não muda nada daquilo para que o segundo existe. Os dois aparecem em Backups no painel, e daí vem a maior parte da confusão.
Ajuda pensar num como gravação e no outro como fotografia. Um backup diário é uma fotografia: um quadro por dia, tirado numa hora fixa, e você pode levá-lo para fora do prédio. O point-in-time recovery é a câmera do próprio prédio, rodando sem parar, que deixa você parar no quadro que quiser. As fitas estão no porão e alcançam uma semana para trás.
O que é point-in-time recovery no Supabase?
É uma forma de devolver seu banco de dados a um momento específico em vez de a um backup específico.
O Supabase monta isso com duas coisas funcionando juntas. A primeira é um backup físico, um retrato diário dos arquivos do banco. A segunda é o arquivamento do Write Ahead Log: o Postgres mantém um registro corrido de cada alteração que faz, e o Supabase leva esses arquivos embora a cada dois minutos, ou na hora quando um deles passa de certo tamanho. Uma restauração carrega o retrato e depois reproduz o registro para a frente até alcançar o momento que você pediu.
É desse mecanismo que vem a precisão. O Supabase descreve o resultado como uma granularidade que chega aos segundos, com um pior caso que eles colocam num Recovery Point Objective de dois minutos, ou seja, o máximo que você poderia perder no fim do momento escolhido.
A documentação de backups deles é a página com o formato atual de tudo isso. Tudo o que vem aqui embaixo depende de números que pertencem a eles.
Quanto custa o point-in-time recovery do Supabase?
$100 por mês para uma janela de sete dias, além do plano Pro, que sozinho custa $25 por mês.
O Supabase cobra o adicional por hora e vende três tamanhos de janela:
| Janela de recuperação | Quanto o Supabase cobra |
|---|---|
| 7 dias | $0.137 por hora, cerca de $100 por mês |
| 14 dias | $0.274 por hora |
| 28 dias | $0.55 por hora |
Existe uma segunda linha na fatura, e é ela que pega as pessoas de surpresa. O point-in-time recovery exige pelo menos a instância de computação Small. Um projeto Pro roda por padrão na Micro, que os $10 de crédito de computação incluídos no plano cobrem por inteiro; a Small fica na casa dos $15 por mês, então o crédito deixa de cobrir sua computação e o restante começa a aparecer na sua fatura. O adicional sai, portanto, um pouco mais caro que o número impresso ao lado dele.
Está disponível no Pro, no Team e no Enterprise. No plano gratuito não existe nada a que acrescentá-lo, porque o plano gratuito não tira nenhum backup automático.
Confira os dois números na própria página de preços do Supabase no dia em que for decidir, e não nesta. Eles são do Supabase e podem mudar, e esta página não vai perceber quando isso acontecer.
Quando o point-in-time recovery vale o preço?
Quando você consegue apontar o minuto, e quando o trabalho dos dois lados dele importa.
Uma migração rodou às 14:32 e levou uma coluna junto. Um script que você iniciou no almoço escreveu o valor errado em cada linha. Um agente de IA recebeu acesso de escrita e usou. Nos três casos você sabe quando, e esse quando é a entrada inteira. Você escolhe 14:31, e o banco volta como estava um minuto antes do estrago.
O que custa dinheiro é o resto daquela manhã. Restaurar a cópia da meia-noite também apaga cada cadastro, cada pedido e cada mensagem que seus usuários criaram desde a meia-noite, então desfazer um erro significa aceitar uma segunda perda, menor. Com point-in-time recovery o trabalho da manhã fica.
Já que você está no painel pensando no que pode dar errado, também vale saber o que seu app já mostra a um estranho. Nosso scan gratuito lê seu site no ar de fora e conta o que consegue ver. Leva uns 20 segundos e não pede conta nenhuma: escaneie seu app.
O que o point-in-time recovery não alcança
Duas coisas: um erro que você percebe depois que a janela passou, e a conta onde todo o arranjo mora.
Um erro percebido tarde. A janela anda junto com o dia de hoje, então uma janela de sete dias é sempre os últimos sete dias e nunca uma semana fixa. Para uma exclusão isso é generoso, porque uma exclusão costuma se anunciar em minutos. Com as silenciosas não ajuda em nada: um formulário que vem salvando o valor errado desde a terça retrasada, uma coluna que sumiu numa migração que ninguém leu com calma, um campo que um script vem sobrescrevendo há um mês. Essas aparecem quando um cliente escreve, e um cliente que escreve raramente faz isso dentro de sete dias da causa.
A conta onde a recuperação mora. Os retratos e o registro arquivado ficam dentro do seu projeto Supabase, e é exatamente isso que os deixa rápidos e os reduz a um clique. Também significa que um projeto suspenso, um cartão vencido ou um acesso que você não recupera levam a recuperação junto com aquilo que ela protegia. É uma troca justa e não um defeito, e é a razão de uma cópia dentro da sua conta ser só metade da rede.
O point-in-time recovery cobre meus arquivos do Storage?
Não. As palavras do Supabase são que os backups do banco não incluem os objetos que você guarda pela Storage API, e o point-in-time recovery é um recurso do banco.
Cada avatar, cada PDF enviado e cada foto de produto que seus usuários acrescentaram vive no Storage, que é um serviço separado. Seu banco guarda o caminho de cada arquivo e nada do conteúdo deles. Então um banco rebobinado para terça aponta para o que estiver hoje nos seus buckets, e um arquivo apagado na quarta continua apagado depois de uma recuperação que funcionou perfeitamente.
Seja qual for sua decisão nesta página, seus arquivos pedem uma resposta própria. Três formas de fazer backup de um banco Supabase conta onde cada caminho os deixa.
Uma ferramenta de terceiros pode me dar point-in-time recovery?
Não, e essa é a afirmação do assunto que mais merece ser olhada com calma, porque soa como comparação de recursos e é uma diferença de categoria.
O point-in-time recovery reproduz o write-ahead log, e esse registro é um arquivo no disco onde seu banco roda. Lê-lo significa estar em pé naquela máquina. Toda ferramenta de backup externa, a nossa incluída, se conecta ao seu banco do mesmo jeito que seu app, pede o conteúdo dele e anota a resposta. O que sai é um dump lógico: uma cópia completa e transportável de tudo que estava no banco no momento em que o dump rodou.
Um dump é de novo a fotografia. Você pode levá-lo para qualquer lugar, carregá-lo num projeto recém-criado de outra conta e lê-lo com ferramentas comuns do Postgres que nunca ouviram falar do Supabase. O que você não consegue fazer é parar entre dois dumps, porque no meio não havia nada gravando.
Então a versão honesta da comparação. Se o que você precisa é cair nas 14:31, compre o adicional do Supabase; ninguém fora da plataforma tem como vender isso para você. Um fornecedor que anuncia point-in-time recovery por cima de uma conexão está descrevendo um agendamento, e uma pergunta separa os dois: a restauração dele cai num minuto que você digita, ou na última vez que a cópia dele rodou?
Point-in-time recovery, ou uma cópia que você guarda?
Pergunte contra qual desastre você está se segurando, porque esses dois respondem a desastres diferentes.
| Point-in-time recovery | Uma cópia que você guarda | |
|---|---|---|
| Devolve você a um minuto apontado | Sim | Ao momento em que uma cópia rodou |
| Alcança além da janela | Não | Até onde você guardar cópias |
| Sobrevive a perder a conta | Não | Sim |
| Inclui arquivos do Storage | Não | Só se pediram que ela os levasse |
| Onde mora | Dentro do seu projeto | Onde você colocar |
| Quanto custa | A partir de $100 por mês, mais a computação | De graça na mão, ou uma assinatura |
A maioria dos apps com clientes de verdade quer os dois, e é sobre a ordem que convém decidir com atenção. A cópia que você guarda é a que sobrevive a tudo, inclusive à conta, então é a primeira a montar. O adicional a gente compra depois de calcular que perder uma manhã de pedidos custa mais que ele.
O que fazer esta semana
O que fazer
- Descubra se o adicional já está ligado, em Database e depois Backups no seu painel do Supabase. Dá para estar pagando por ele sem saber.
- Anote quanto tempo um erro silencioso poderia ficar sem ser notado no seu app. Se esse número passar de sete dias, uma janela mais larga compra menos do que parece.
- Monte uma cópia do seu banco que more fora da sua conta do Supabase, pelo caminho que preferir. O point-in-time recovery não faz esse trabalho e nem tenta.
- Faça backup dos arquivos do Storage à parte, porque nenhuma recuperação de banco, em nenhum plano, inclui eles.
- Restaure alguma coisa uma vez num projeto descartável, para a primeira leitura de uma dessas cópias não cair no meio de um incidente.
Onde entra o Reeve Care
O Care é a cópia que você guarda, montada para você, com uma restauração que você aperta em vez de montar.
- As cópias rodam num agendamento que você não precisa lembrar, a cada seis horas nos planos mais altos, e uma que falha manda um e-mail em vez de um silêncio.
- Cada cópia mora fora da sua conta do Supabase. Criptografada, num armazenamento nosso, para que um projeto suspenso ou um acesso perdido não leve seus backups junto.
- Cada cópia é relida antes de contar. A data no seu painel é a última cópia que passou nessa conferência, nunca a última tentativa.
- Restaurar é um botão, e antes de começar ele tira um retrato do estado atual, então a própria restauração tem o desfazer dela.
- Os arquivos que seus usuários enviaram também são copiados, assim que você conecta seus buckets do Storage. Essa é uma segunda chave, pedida à parte, porque a chave que o Supabase emite para o Storage sabe escrever além de ler e preferimos perguntar a misturá-la com uma que não sabe.
O Care e o adicional se completam, e é assim que estão precificados também. O Care começa em $49 por mês para um app, contra $100 do adicional, e muitos apps deveriam ter o primeiro antes de pensar no segundo. Os nossos são preços de tabela, e a página de preços às vezes fica abaixo do número daqui e nunca acima. Cada número do Supabase nesta página está citado das páginas deles, sem conversão e sem estimativa.
Como uma cópia é tirada, conferida e devolvida está desenhado passo a passo na página de backups do Supabase.
Antes de fechar esta aba, calcule o número de que toda essa decisão depende: quanto tempo um erro poderia ficar no seu app antes de alguém notar. Abaixo de sete dias, o adicional compra precisão de verdade no dia em que você precisar. Acima disso, uma janela mais larga não é o lugar do dinheiro, porque o que alcança mais para trás é uma cópia sua. A lista de segurança de 10 minutos cobre backups junto com o resto do que vale confirmar num app já no ar.
Perguntas frequentes
Quanto custa o point-in-time recovery do Supabase?
O Supabase cobra $100 por mês por uma janela de recuperação de sete dias, além do seu plano Pro. Há um segundo custo que o número de destaque deixa de fora: o adicional exige pelo menos a instância de computação Small, que fica na casa dos $15 por mês, e um projeto Pro roda por padrão na instância Micro, menor. Leia os dois números na página de preços deles no dia em que for decidir, porque são deles e podem mudar.
O point-in-time recovery está incluído no plano Pro do Supabase?
Não. O Pro inclui backups diários que alcançam sete dias para trás, e o point-in-time recovery é um adicional pago em cima disso. O Supabase oferece nos planos Pro, Team e Enterprise. O plano gratuito não tem nenhum backup automático, então lá não existe nada a que acrescentá-lo.
Uma ferramenta de backup de terceiros pode me dar point-in-time recovery?
Não, e uma ferramenta que dá a entender o contrário está descrevendo outra coisa. O point-in-time recovery reproduz o write-ahead log, um arquivo no disco onde seu banco roda, ou seja, só a plataforma que opera esse disco consegue lê-lo. Toda ferramenta externa se conecta do mesmo jeito que seu app e pede ao banco o conteúdo dele, o que produz uma cópia transportável de um instante. Essa cópia é realmente útil, e é um objeto diferente.
O point-in-time recovery faz backup dos meus arquivos do Supabase Storage?
Não. O Supabase escreve sem rodeios que os backups do banco não incluem os objetos que você guarda pela Storage API, e o point-in-time recovery é um recurso do banco. Cada avatar, PDF e imagem que seus usuários enviaram vive num serviço separado, e rebobinar o banco para terça deixa esses arquivos exatamente como estão hoje. Guardá-los é um trabalho próprio, seja qual for o caminho que você escolher.
Até onde o point-in-time recovery do Supabase alcança para trás?
Até onde chegar a janela que você paga, e nem um dia além. O Supabase vende a retenção em três tamanhos: sete dias, catorze dias e vinte e oito dias, a $0.137, $0.274 e $0.55 por hora respectivamente. A janela anda junto com o dia de hoje, então cada hora que passa empurra a hora mais antiga para fora na outra ponta. Um erro de cinco semanas atrás está fora das três.