Replit charged you after cancelling, or your account is paused over billing: the three flavors and the fix
Three versions of the same nightmare are showing up on r/replit right now. One person cancelled months ago, their Billing page literally says FREE, and the monthly charge keeps landing anyway. They cannot remove their credit card either. Another paid $20 after a billing failure, got told the account was active again, and is still locked out. A third had one failed charge pause their account, fixed the payment, and the account stayed paused. Support tickets sit unanswered while a live app is down. Here is what is actually happening in each case, what you can do yourself in the next hour, and how to get your app running somewhere else while the ticket crawls.
What is actually happening
Almost every "Replit is still charging me" case comes down to one of three situations. Figure out which one you are in before you touch anything.
Flavor 1: charged while your plan shows Free
If your Billing page says FREE but money keeps leaving your card, the charge is almost never coming from the plan you are looking at. It is usually a second subscription living somewhere else on the same account. The common culprits: a workspace or org you created (or got added to) that carries its own subscription, or a legacy subscription like an old cycles or Core plan sitting under a different org. Your personal billing page shows Free because your personal plan really is Free. The charge comes from the other one.
Check replit.com/account#billing first, then check every team or org you belong to. Each one can have its own billing page, and any one of them can be the thing charging your card.
Flavor 2: you cannot remove your credit card
This one feels sinister but it is mechanical. Replit keeps a card on file while any subscription or unpaid balance exists on the account, even a $0 one. So the "remove card" option staying dead is actually a clue: something, somewhere on your account, is still classified as an active subscription or an open balance. You cannot fix this by attacking the card. Find the hidden subscription (see flavor 1), cancel it, and the card becomes removable.
Flavor 3: you paid, and you are still locked out
A failed charge pauses the account. You fix the payment, the invoice shows paid, and the account stays paused anyway. Reactivation is not instant, and in some cases it needs someone on the support side to flip the switch. A paid invoice next to a still-paused account is not just frustrating, it is the exact evidence you want. It proves you held up your end and the lock is on their side.
Do this yourself first (before support ever answers)
- Audit every org and team you belong to. Open your personal billing page at replit.com/account#billing, then visit each team or org and look for its billing or subscription page. You are hunting for any subscription that is not the Free one you already know about. This finds the hidden charger in most flavor 1 and flavor 2 cases.
- Download your invoices. Invoices name which subscription generated the charge. That single line answers "what is Replit actually billing me for" better than any support reply. Grab every invoice from the months you were charged.
- Cancel from the subscription page, not just "downgrade". When you find the live subscription, look for an explicit cancel option on that subscription. Downgrading your visible plan while another subscription keeps running is exactly how people end up "on Free" and still paying.
- Screenshot everything. The FREE plan page, each org billing page, each invoice, the cancel confirmation, and the date on your screen. If this ends in a refund request or a card dispute, timestamps win arguments.
Escalating to support so it actually moves
File one ticket and make it dense with facts, not feelings. Include: the invoice IDs of the charges, a screenshot of your billing page showing FREE (or the paid invoice next to the paused account, if you are flavor 3), the date you cancelled, and one sentence asking for the specific action: refund the post-cancellation charges, remove the card, or unlock the paid account. A ticket that contradicts itself in Replit's own records ("your invoice charged me on this date, your billing page says Free") is much harder to leave in the queue than "I keep getting charged, please help".
Posting in r/replit and tagging ReplitSupport also works. The team is active there and public threads with invoice IDs get picked up.
If charges continue after a documented cancellation: the chargeback option
If you cancelled, you have the screenshots and invoices to prove it, and charges keep landing anyway, a card-issuer dispute is legitimate for the charges dated after your cancellation. Your bank will ask for exactly the evidence you collected above. Dispute only the post-cancellation charges, not the months you were genuinely subscribed.
One serious warning first: a chargeback usually gets the Replit account banned. Do not dispute anything until your code and data are out. Download the zip of every Repl you care about, and if you have databases, export them (for Postgres, a pg_dump of each database). Once you have local copies of everything, the account is no longer a hostage and the dispute is a clean business decision.
Your app does not have to stay down while this drags on
A billing lock on your Replit account and your app being offline are two separate problems, and you only have to accept the first one. If the app matters, get it out and running elsewhere today:
- Export the code. Download the zip of the Repl (or push it to GitHub if that still works for you).
- Export the data. pg_dump your database, or copy out whatever storage the app uses.
- Deploy the frontend and server on Vercel or Netlify. Most vibe-coded apps move over with minimal changes.
- Stand up your own database on Neon (free tier is fine to start), restore your dump into it, and point DATABASE_URL at the new database.
Now the support ticket can take two weeks and your users never notice. If your app broke on its own around the same time and you are not sure billing is even the cause, start with app worked yesterday, now broken with no changes on your side. And if your block is the usage budget message rather than a paused account, that is a different (and faster) fix: Replit "monthly usage budget reached" while you still have credits.
Do not do this
Do not pay again "to see if it unlocks this time". Flavor 3 shows that a successful payment and an unlocked account are not the same event, and now you have two charges to argue about instead of one. Do not delete the account to stop the charges before exporting your code; you would trade a billing problem for a lost-app problem. And do not fire off a chargeback in anger while your only copy of the code still lives inside the account.
Still stuck?
Run the instant diagnosis. Paste your public repo URL into the form and an automated clean-room check reports what is broken: install, build, render, and config, with the exact blocker named, in minutes, free. Billing locks live in your Replit account rather than your code, but if you are mid-escape (zip in hand, app not yet running on Vercel or Netlify), paste the repo and I will name what is blocking the redeploy the same day. Private repo or zip? Email works too.
Get an instant free diagnosisOr email me instead. Fixes with 24 hour turnaround start at $95. Prefer self-serve? The $5 instant diagnosis on Apify checks your repo privately, no public issue needed.