Todos os artigos
Deep dive9 min de leitura

As renovações falham com mais frequência do que os clientes cancelam, e esse churn involuntário é receita que você ainda pode recuperar

Um cartão recusado, não um toque em cancelar, encerra grande parte das assinaturas, e a loja continua tentando cobrar por semanas. Veja como funcionam o período de carência de cobrança, a nova tentativa de cobrança e a retenção de conta na App Store e no Google Play, e o que o churn involuntário realmente custa a você.

Uma mão segurando um telefone que mostra um aviso de falha no pagamento da assinatura ao lado de um cartão bancário vencido, ilustrando o churn involuntário de uma renovação recusada

Principais conclusões

  • O churn involuntário é uma assinatura que termina porque uma cobrança de renovação falhou, geralmente um cartão vencido ou recusado, não porque o cliente escolheu cancelar. É um problema de pagamentos, e as duas lojas são feitas para recuperá-lo por você.
  • Quando uma renovação falha, nenhuma loja encerra a assinatura na hora. A Apple tenta o cartão novamente por até 60 dias, e o Google Play mantém uma janela de recuperação de 60 dias dividida entre um período de carência e uma retenção de conta.
  • Durante um período de carência de cobrança o assinante mantém o acesso completo enquanto a loja tenta de novo. Recupere dentro da carência em qualquer das lojas e não há interrupção nem dias perdidos, e a data de cobrança não se move.
  • Após o período de carência o assinante perde o acesso, mas a nova tentativa continua. Recupere então e a Apple inicia um novo ciclo de cobrança na data de recuperação, e o Google redefine a data de cobrança, então você recupera o assinante com um relógio novo.
  • A recuperação roda em segundo plano sem custo para você. Você não paga a um processador para tentar de novo, e a Apple até absorve os dias gratuitos servidos durante a carência. A receita que você perde geralmente é receita que você deixa escapar ao desligar a carência ou ao interpretar mal um assinante recuperável como perdido.
  • Os sinais chegam pelos mesmos feeds de App Store Server Notifications e RTDN do Google Play que você já usa para os reembolsos: DID_FAIL_TO_RENEW e SUBSCRIPTION_IN_GRACE_PERIOD, SUBSCRIPTION_ON_HOLD, e depois um BILLING_RECOVERY ou SUBSCRIPTION_RECOVERED quando o cartão é aprovado.
  • Um assinante em carência ou retenção ainda não deu churn. Conte-o como perdido apenas quando a janela de 60 dias se fecha sem recuperação, ou o seu churn parecerá pior do que é e a sua taxa de recuperação parecerá zero.

Um cartão vence, um banco recusa uma renovação, e um assinante que você nunca perdeu deixa de pagar. Ele não abriu o seu app nem tocou em cancelar. O método de pagamento dele simplesmente falhou, e a menos que você saiba o que acontece a seguir, ele some da sua receita sem fazer barulho. Isso é o churn involuntário, e tanto na App Store quanto no Google Play a loja não desiste desse pagamento quando ele falha. Ela mantém o assinante, continua tentando o cartão e, na maioria dos casos, mantém uma janela aberta por semanas em que o dinheiro ainda pode chegar. A maior parte dessa recuperação acontece quer você aja ou não. Interpretá-la corretamente é a diferença entre contar um cancelamento real e dar por perdido um pagamento que a loja está prestes a cobrar por você.

Isso não é um reembolso nem um estorno. Nada se reverte, nenhum dinheiro sai da sua conta. A receita simplesmente nunca chega, e nos seus relatórios parece uma expiração comum. É exatamente por isso que ela vaza em silêncio. Um cliente que cancela avisa que está indo embora. Um cliente cujo cartão falhou não avisa nada, e se você os tratar da mesma forma, perde aqueles que a loja estava prestes a recuperar.

O que o churn involuntário realmente é

O churn vem em duas formas, e elas não são o mesmo problema. O churn voluntário é uma decisão: o cliente cancela porque não quer mais a assinatura. O churn involuntário é um acidente: a cobrança de renovação falha, geralmente porque um cartão venceu, atingiu o limite ou foi sinalizado pelo banco por ser uma cobrança recorrente ou estrangeira. O primeiro é um problema de produto que você resolve com o produto. O segundo é um problema de pagamentos, e é o que a loja é feita para resolver por você.

Por que é maior do que parece

Renovações que falham são comuns, e não têm nada a ver com o quão bom é o seu app. Cartões vencem conforme um calendário, saldos se esgotam e bancos recusam cobranças recorrentes que decidem que parecem arriscadas. A cada ciclo de renovação uma fatia das suas cobranças falha por razões que o assinante nunca escolheu. Como esses assinantes nunca anunciaram que estavam saindo, é fácil confundi-los com expirações comuns e fácil perdê-los de vista, e é assim que a receita recuperável acaba registrada como morta.

A App Store continua tentando por 60 dias

Quando uma assinatura de renovação automática não consegue ser cobrada, a Apple não a encerra. Ela passa para um período de nova tentativa de cobrança que dura até 60 dias, e a Apple continua tentando o cartão ao longo dessa janela. O que o assinante vivencia durante esses 60 dias depende de uma configuração que você controla: o período de carência de cobrança.

O período de carência de cobrança mantém o acesso enquanto a Apple tenta de novo

Ative o Período de Carência de Cobrança e o assinante mantém o acesso completo ao seu conteúdo pago durante a duração da carência, até 16 dias nos planos mensais e anuais, enquanto a Apple tenta o cartão de novo. Recupere dentro do período de carência e não há nenhuma interrupção: a mesma data de cobrança, nenhum dia de serviço perdido e nenhuma lacuna na sua receita. A Apple até absorve o custo dos dias que serviu de graça durante a carência. Esta é a rara configuração que é quase puro ganho, porque um assinante recuperado nem sequer percebe a cobrança que falhou.

Após a carência, o acesso para mas a nova tentativa não

Assim que o período de carência termina sem uma cobrança bem-sucedida, o assinante perde o acesso, mas a Apple continua tentando o cartão pelo resto da janela de 60 dias. Recupere nesse intervalo e o assinante renova na data de recuperação, iniciando um novo ciclo de cobrança, e a Apple não cobra pelos dias de carência já concedidos. Somente quando os 60 dias completos passam sem um pagamento bem-sucedido é que a assinatura expira de vez. Deixe o período de carência desligado e o assinante perde o acesso no instante em que a renovação falha, que é o pior momento possível para entregar a um cliente que paga uma porta trancada.

As notificações que marcam cada passo

O seu feed de App Store Server Notifications narra toda a sequência. DID_FAIL_TO_RENEW avisa que uma renovação falhou, carregando um subtipo GRACE_PERIOD enquanto o assinante ainda está dentro da carência e deve manter o acesso. GRACE_PERIOD_EXPIRED marca o fim da carência, o momento de revogar o acesso. DID_RENEW com um subtipo BILLING_RECOVERY significa que o cartão finalmente foi aprovado e o assinante voltou. EXPIRED com um subtipo BILLING_RETRY significa que os 60 dias se esgotaram e o assinante realmente foi embora. Trate esses quatro e o seu acesso sempre vai coincidir com o estado real.

Um calendário com um intervalo de dias marcado e uma pequena ampulheta pousada sobre ele, ilustrando a janela de recuperação que uma loja mantém aberta em uma renovação de assinatura que falhou

O Google Play divide os mesmos 60 dias em dois

O Google Play executa a mesma ideia de outra forma e com o seu próprio vocabulário. Uma renovação que falha faz a assinatura passar por um período de carência e depois por uma retenção de conta, e as duas juntas formam uma janela de recuperação de 60 dias.

O período de carência mantém o acesso, a retenção de conta o retira

Durante o período de carência o assinante mantém o acesso enquanto o Google tenta o cartão de novo, e o horário de expiração é empurrado para frente conforme as tentativas rodam. Se o cartão for aprovado, a assinatura se recupera com a sua data de renovação original intacta, como se a falha nunca tivesse acontecido. Se a carência se esgota, a assinatura cai em retenção de conta. Agora o acesso para, e permanece desligado até que o pagamento seja corrigido. Recupere a partir da retenção de conta e o acesso volta, mas a data de cobrança é redefinida para a data de recuperação em vez da antiga.

A conta dos 60 dias mudou no fim de 2025

A partir de 1º de dezembro de 2025, o Google calcula a duração da retenção de conta como 60 dias menos o seu período de carência. Uma carência de 16 dias deixa 44 dias de retenção, e a janela de recuperação combinada permanece em 60 dias. Escolha uma carência mais longa e você troca tempo de retenção por tempo de acesso, mas a janela total não muda. O Google recomenda ler o estado ao vivo da assinatura pela sua API em vez de supor uma duração de retenção fixa, porque a divisão agora é derivada, não estática.

Os tipos de RTDN que você trata

As Real-time Developer Notifications do Google Play anunciam cada etapa. SUBSCRIPTION_IN_GRACE_PERIOD significa manter o acesso e pedir ao cliente que corrija o cartão. SUBSCRIPTION_ON_HOLD significa revogar o acesso agora. SUBSCRIPTION_RECOVERED significa que o pagamento foi aprovado e o acesso volta. SUBSCRIPTION_CANCELED e depois SUBSCRIPTION_EXPIRED significam que a janela se fechou sem correção e o assinante deu churn. Essas chegam pelo mesmo canal de RTDN que você já usa para compras anuladas e reembolsos.

EtapaApp StoreGoogle Play
Renovação falhou, acesso mantidoPeríodo de carência de cobrança, até 16 diasPeríodo de carência, a duração que você definir
Renovação falhou, acesso perdidoApós a carência, pelo resto dos 60 diasRetenção de conta
Janela total de recuperaçãoAté 60 dias60 dias, carência mais retenção
Recuperar durante a carênciaMesma data de cobrança, sem dias perdidosMesma data de renovação, sem interrupção
Recuperar após a carênciaNovo ciclo de cobrança na data de recuperaçãoA data de cobrança é redefinida para a data de recuperação
Termina de vezEXPIRED, subtipo BILLING_RETRYSUBSCRIPTION_EXPIRED

O que o churn involuntário custa a você

O custo aqui não é do tipo reembolso, em que o dinheiro que você registrou é retomado. É receita que nunca aparece, e ela se esconde nos seus números como uma simples expiração.

Uma renovação que você já pagou para conquistar

Cada assinante recorrente custou dinheiro de verdade para conquistar: o gasto com anúncios e a criação que o adquiriram, o onboarding, e o processamento, o armazenamento e as chamadas de API que você rodou para ele em cada ciclo desde então. Um assinante perdido por um cartão morto vai embora com todo esse custo afundado sem recuperar, e para repor a receita você paga custos de aquisição de novo por alguém novo. Um assinante que a loja recupera não custa nada para readquirir. A diferença entre esses dois, readquisição completa versus zero, é o dinheiro que o churn involuntário de fato movimenta.

A recuperação está rodando de graça, se você deixar

Aqui está a parte que passa despercebida. Durante a carência e a nova tentativa, a loja cobra em seu nome sem custo para você. Você não roda a régua de cobrança, não paga a um processador por cada tentativa, e não precisa enviar um único e-mail. A recuperação está acontecendo em segundo plano ao longo de uma janela de 60 dias. Quando essa receita é perdida mesmo assim, geralmente se deve a um de dois erros autoinfligidos: desligar o período de carência, de modo que os assinantes ficam bloqueados no momento em que um cartão falha, ou tratar um assinante que ainda está dentro da janela de recuperação como um cancelamento definitivo e desistir de uma receita que a loja não tinha abandonado.

Como de fato manter o churn involuntário baixo

Gaste o seu esforço nas poucas configurações e sinais que movem a recuperação, e deixe a loja fazer a nova tentativa que ela já faz bem.

Ative o período de carência de cobrança

Nas duas lojas, habilite um período de carência. Ele mantém os assinantes que pagam dentro do seu app enquanto a loja tenta de novo, então um assinante recuperado nunca perde um dia, e é o controle de maior alavancagem aqui. Na App Store é um botão em App Store Connect. No Google Play um período de carência vem ligado por padrão para os planos base de renovação automática, então o trabalho é mantê-lo ligado e definir uma duração que você se sinta confortável em servir de graça.

Faça o acesso coincidir com o estado real na carência e na retenção

Mantenha o acesso durante a carência, no DID_FAIL_TO_RENEW da Apple com o subtipo GRACE_PERIOD e no SUBSCRIPTION_IN_GRACE_PERIOD do Google. Revogue o acesso quando a carência da Apple expira e quando o Google envia SUBSCRIPTION_ON_HOLD. Restaure-o no momento em que a recuperação chega, em BILLING_RECOVERY ou SUBSCRIPTION_RECOVERED. Erre em uma direção e você dá acesso de graça por semanas. Erre na outra e bloqueia um assinante que está a uma tentativa de voltar a pagar você.

Conte a recuperação separada do churn

Um assinante em carência ou retenção de conta não deu churn. Não o registre como perdido até que a janela de recuperação se feche sem uma cobrança bem-sucedida. Se a sua análise junta renovação falhou e cliente cancelou em um só número, o seu churn se lê pior do que é e a sua recuperação se lê como se nada estivesse acontecendo. Separe o churn involuntário e acompanhe a sua taxa de recuperação, porque essa taxa é um número que você de fato pode mover com uma configuração e um aviso.

Incentive a correção, depois saia do caminho

A única coisa útil que você pode acrescentar é um empurrãozinho. As duas lojas deixam você pedir ao assinante que atualize o método de pagamento, a Apple dentro do app e o Google pela sua In-App Messaging API e pelas notificações do Play. Um aviso no momento certo durante a carência eleva a recuperação, porque a maioria desses clientes ainda quer a assinatura e só precisa corrigir um cartão. Além do empurrãozinho, deixe a loja tentar de novo. Ela já está fazendo a parte cara, de graça, por semanas.

Os mesmos feeds de App Store Server Notifications e RTDN que o RefundHalt já escuta para os reembolsos também carregam cada um desses sinais de cobrança. Carência, retenção, recuperação e churn involuntário aparecem no seu painel ao lado dos seus reembolsos, para que você possa ver a janela de recuperação fazer o seu trabalho em vez de adivinhar quais renovações que falharam se foram e quais vão voltar.

A versão curta

Uma renovação que falha não é um cancelamento, e a loja a trata assim por semanas. A Apple tenta um cartão de novo por até 60 dias e, com um período de carência ligado, mantém o assinante dentro do seu app enquanto faz isso. O Google Play divide os mesmos 60 dias entre um período de carência que mantém o acesso e uma retenção de conta que o remove. Ligue a carência, trate as notificações de carência e retenção para que o acesso coincida com a realidade, peça ao cliente que corrija o cartão, e conte um assinante como churn apenas depois que a janela se fecha vazia. O churn involuntário é a única fuga de receita que a loja está ativamente trabalhando para tapar por você. O seu trabalho é, na maior parte, sair do caminho, e ler os seus números bem o suficiente para saber quando a perda é real.

Perguntas frequentes

Qual é a diferença entre churn voluntário e involuntário?
O churn voluntário é um cliente escolhendo cancelar uma assinatura. O churn involuntário é uma assinatura que termina porque uma cobrança de renovação falhou, geralmente um cartão vencido ou recusado, sem o cliente decidir sair. O churn involuntário é um problema de pagamentos que a loja tenta recuperar por você, então não deve ser contado nem tratado da mesma forma que um cancelamento real.
Um assinante mantém o acesso quando o pagamento de renovação dele falha?
Depende da etapa. Durante um período de carência de cobrança o assinante mantém o acesso completo enquanto a loja tenta o cartão de novo, tanto na App Store quanto no Google Play. Depois que o período de carência termina, o acesso para: a Apple continua tentando pelo resto da janela de 60 dias com o acesso desligado, e o Google move a assinatura para retenção de conta, onde o acesso é removido até o pagamento ser corrigido.
Por quanto tempo a loja continua tentando cobrar uma assinatura que falhou?
Até 60 dias nas duas lojas. A Apple roda um período de nova tentativa de cobrança de até 60 dias, com o período de carência de cobrança situado dentro dele. O Google Play mantém uma janela de recuperação de 60 dias dividida entre o período de carência e a retenção de conta, onde, desde 1º de dezembro de 2025, a retenção de conta é calculada como 60 dias menos a duração do seu período de carência.
Devo ativar o período de carência de cobrança?
Para a maioria dos apps, sim. O período de carência mantém os assinantes que pagam dentro do seu app enquanto a loja tenta um cartão que falhou de novo, então qualquer um que se recupere dentro dele nunca perde um dia e nunca percebe a falha. O custo são alguns dias de acesso de graça para os assinantes que nunca se recuperam. O benefício é manter aqueles que teriam ido embora por causa de um bloqueio repentino.
Um assinante em período de carência ou retenção de conta já deu churn?
Não. Ele está dentro da janela de recuperação, e a loja ainda está tentando cobrar. Contá-lo como churn superestima o seu churn e esconde a sua taxa de recuperação. Registre um assinante como perdido apenas quando a janela de 60 dias se fecha sem um pagamento bem-sucedido, o que as lojas sinalizam com uma notificação EXPIRED (billing retry) na Apple e SUBSCRIPTION_EXPIRED no Google Play.
O churn involuntário cria um reembolso ou um estorno?
Não. Nada se reverte e nenhum dinheiro sai da sua conta. Uma renovação que falha é receita que nunca chega, não um pagamento sendo retomado. Isso é o oposto de um reembolso ou estorno, e é por isso que ela se esconde nos seus relatórios como uma expiração comum em vez de aparecer como dinheiro saindo.

Fontes e leituras adicionais

RefundHalt

O piloto automático de reembolsos para App Store e Google Play

Continue lendo

A próxima solicitação de reembolso já está a caminho.

Configure a RefundHalt no tempo que você levaria para ler mais um e-mail de suporte sobre um reembolso que não conseguiu contestar.