Billing, limits & safety
What asset storage costs, what happens when your balance runs out, the limits on unpaid accounts, and how abuse reports and freezes work.
What is billed
Section titled “What is billed”Asset storage is billed per GB·month, by the hour, on the bytes that exist — the same model as a persistent volume. The live rate is shown on the storage gauge at the top of the Assets page and on the Pricing page.
| Asset | Billed as storage |
|---|---|
| Anything in Meshive-managed storage — uploads, harvested output, imports, task outputs, subset fetches | Yes, from the first byte |
| Objects registered in place from your own bucket | No |
| Prefix references to your own bucket | No |
| An asset you deleted | No — charges stop at deletion |
Charges appear as their own line in the workspace billing breakdown, separate from compute and volumes. Storage is billed while the data exists, whether or not anything is using it.
When credit runs out
Section titled “When credit runs out”Assets follow a staged lifecycle rather than disappearing at zero. Intervals are platform configuration and may change; the console and our emails always show the live dates.
| Stage | What happens |
|---|---|
| Grace (a few days after depletion) | Everything still works. We email the billing contact. Storage charges keep accruing — your balance can go negative |
| Locked | New uploads, imports, attaching assets to workloads, and content previews are blocked. Downloading, exporting, deleting, and editing metadata stay available. Publishing to Hugging Face is blocked |
| Deletion notice | We email a final deadline before anything is deleted |
| Deletion | Assets in managed storage are permanently deleted. Assets registered from your own bucket are not touched |
Settling the balance in full — including any negative balance — restores everything immediately, as long as deletion has not already run. Paying after deletion restores the account but not the data.
Uploads already in flight are allowed to finish even while locked, so a transfer is never left half-written.
Limits on accounts that have never paid
Section titled “Limits on accounts that have never paid”Accounts with no completed payment have conservative caps, so free credit can’t be used as free storage:
| Limit | Effect when exceeded |
|---|---|
| Total managed storage | New uploads and imports are refused |
| Daily download volume | Downloads are refused until the next day (UTC) |
Both lift as soon as a real payment lands. The download cap is also lifted once deletion has been scheduled, so you can always retrieve your data. Fetching inputs into your own Pods and tasks does not count against the download cap.
Safety
Section titled “Safety”Pickle warnings
Section titled “Pickle warnings”Files in Python pickle formats execute code when loaded. Meshive flags them on the asset row and in the file list:
- pickle · runs code on load (detected) — the file’s contents were checked and confirmed.
- pickle · runs code on load (suspected) — inferred from the file name.
Meshive does not block these files; the badge exists so you know what you’re loading. Prefer safetensors where the publisher offers both.
Reporting abuse
Section titled “Reporting abuse”Any signed-in user can report an asset they believe violates the Acceptable Use Policy. Reports go to our review queue; we don’t commit to a response time and may not report the outcome individually. Knowingly filing false reports is itself a violation.
Frozen assets
Section titled “Frozen assets”While a report is under review, an asset may be frozen. While frozen:
- It cannot be used, downloaded, exported, published, or deleted — this preserves it for review.
- Metadata edits (renaming, correcting the type) are still allowed.
- It is exempt from automated deletion, including the unpaid-balance lifecycle, and storage charges may continue.
The freeze is lifted if the review finds no violation.
Deletion
Section titled “Deletion”Deleting an asset removes it from your workspace immediately and stops charges. Managed bytes are physically removed by a background pass shortly after; objects in your own bucket are never deleted by us. There is no undo — export or download first.
Troubleshooting
Section titled “Troubleshooting”| You might see | It means | Do |
|---|---|---|
| Asset in use on delete | A Pod or a non-terminal task is consuming it | Delete the Pod or wait for the task to finish, then retry |
| Upload window expired | The upload sat idle for about 24 hours. The window renews while parts keep moving, so this means the transfer stopped — not that it was too slow | Start the upload again |
| An upload that can’t be resumed | You’re in a different browser, or the window expired | Start over — partial data is cleaned up automatically |
| Import stuck at “importing” for a long time | Large repositories copy at network speed | Leave it; a genuinely stuck import fails on its own and shows a reason |
| A download link returning 403 | The signed link expired | Reload the page to get fresh links |
| A registered bucket asset that won’t download | The underlying object moved or was deleted in your bucket, or the credential was revoked | Re-verify the credential under Settings → Integrations, or re-register the object |