At RunPod, we want to be wholly transparent about how how we manage billing clients, since we know that discussing financial matters can be a very charged conversation. We want to equip you with every tool available to ensure that your pods run smoothly without interruption due to a low balance.
As discussed in our FAQ, your pods will be automatically stopped when you have about 10 minutes of runtime left at your chosen GPU spec so you can re-start the pod with 0 GPUs to retrieve your data without depositing additional funds. You should be aware that in the interim while you reload your account those GPUs will be placed up for other clients to rent, which can pose a logistic issue where you may need to pull your data down and push it to a new pod, if you're not able to get ahold of those same cards in a given machine where your data might be stored. (This can be particularly challenging if it's an A100 or other spec setup that's currently in high demand.) Although your data on disk will be retained for at least 48 hours even after your balance is completely drained, it's best to avoid service interruptions before they occur by being aware of your funding levels and potential issues you may run into while reloading.
How to ensure you don't deplete your funds
RunPod gives you several methods to keep abreast of your funding level and to prevent pod shutdown due to a low balance. If a network volume or machine storage is terminated automatically, they are not recoverable as that drive space will be allocated to other clients just as if you had clicked the Terminate button on your pod status screen yourself. Here's what you can do on your end to keep your pods running.
Enable Low Balance Threshold Messages
You'll want to be aware that your balance is running low, and if you are using Serverless and managing spiky workloads this could come sooner than you think. These messages are off by default, but you can have the platform contact you whenever your balance dips below your defined threshold. This can give you a vital heads up that your balance needs to be replenished. To enable this, go to Settings in your RunPod account and then click Edit under Notification Settings, and define whatever threshold works for you. It's recommended to give yourself at least three days' notice of your average spend to prevent your account running dry over weekends or holidays.
For note, you can see what your current spend is under Billing - the top of the page will show your current spend and estimated remaining funding level, and the bottom will have the Billing Explorer which will give you a breakdown of all recent spend.
Enable Automatic Payments
Under Billing, you can also have the platform automatically charge your card to replenish your balance if you have a currently active balance of at least $100.
Put a kill switch on your pods
Even I've done this once or twice - I've forgotten to stop a pod before going to bed, meaning that my balance was drained when I got up in the morning. This could potentially even lead to data loss if you don't log in for a few days afterwards and the pods are automatically terminated after their retention period on an empty balance has passed. Although there's not really a way to stop a pod based on mere idleness, you can put a limit on how long a pod runs by entering this into the Docker Command field on your Edit Pod screen or within a terminal once you start your pod - just replace the "2h" with your requested timeout, and the pod will automatically stop after the requested interval.
bash -c "nohup sleep 2h; runpodctl stop pod $RUNPOD_POD_ID" &
My card keeps getting declined!
Card declines are more common than you'd think, and it may not always be clear why they occur – especially because they might be declined for different reasons, but the returned message to you might be the same for all of them. This can be a very frustrating feeling, especially if you're training a model or are running some other tasks that cannot be interrupted gracefully. You'll also want to familiarize yourself with the cards that Stripe accepts. Here are the most common reasons that your card might be declined for no apparent reason:
Prepaid card thresholds
You can deposit as little as $10 into your RunPod account by card to fund it. However, as a fraud prevention measure, Stripe has its own minimums for prepaid cards that are wholly independent of RunPod's minimum deposit and could trigger a decline when you try to fund your account. A common problem experienced by users is when they make a large deposit which doesn't run into a problem, but then try to "top up" with smaller deposits which triggers an unexpected block. It's highly recommended to deposit in transactions of at least $100 when using a prepaid card, rather than spreading it over several smaller transactions.
Trying multiple cards
It's a common reflex to simply reach for another card when you run into an unexpected decline. The problem is it's common for fraudsters to try small deposits with a bunch of cards in a row to look for a card that works, and it's very difficult for Stripe's fraud protection to distinguish between this innocent and not-so-innocent activity. If you try another card after your first was declined for whatever reason, it may trigger a global, automated block on your account – even if that transaction would have gone through otherwise; at this point, Stripe's fraud protection is kicking in and it's no longer even looking at whether the transaction would have gone through or not. These blocks generally clear up within 24 hours, or potentially earlier if you contact their support, but this can be a headache that you don't want to deal with. If you experience an unexpected decline, immediately call your bank to determine whether there are issues with your card before simply trying another card.
RunPod also accepts crypto payments, and it's highly recommended as a course of risk management to set up a crypto.com account and go through any KYC checks they may require ahead of time so you have an alternate way of funding your account in case you run into issues funding your account with a card payment. In general crypto payments are less vulnerable to the vagaries of the banking system so it can be a useful workaround in a punch.
For large transactions (over $5,000) we also offer business invoicing through ACH, credit card, Coinbase, and local and international wire transfers. Businesses with larger spending tend to prefer these for the added benefits of flexibility, discounts, and reducing the number of invoices. If you're interested in these options and meet the threshold, then reach out to us!
If you have any ideas for additional ways we can help you manage your balance, reach out to us – we are here to help through chat or email, and we also have a Feature Suggestions thread in Discord where we are all ears! We would love to hear from you.