Credits
Credits pay for AI generation on X3D — what a run costs, how many you start with, where more come from, and why they never pay for a physical print.
Credits buy AI generation: turning a prompt or a photo into a 3D model, re-texturing one you already made, rebuilding one from a described change, and generating or editing images. Once your free monthly questions to the site assistant run out, they can also pay for its answers, one per answer, if you choose. A new account starts with 5. This page lists what every operation costs, where more credits come from, what happens when you run out, and whether they expire.
What a credit buys#
| Operation | Credits | Notes |
|---|---|---|
| 3D generation, fast draft | 1 + add-ons | The default mode. See the add-ons below. |
| 3D generation, hi-fi | 2 + add-ons | Prompt enhancement and engine routing are model-written rather than local. |
| Re-texture an existing model | 1 | Flat. Mesh quality and texture settings do not change it. Through POST /api/retexture; the studio has no button for it. |
| Edit model, exact change | 0 | Flatten the base, resize, drill a hole or cut in half. See /docs/studio/design. |
| Edit model, anything else | 1 + the 3D run | 1 to redraw a picture of the model with the change, then an image-to-3D run at its usual price, 2 as a Fast Draft. |
| Image generation | 1 per image | 2 per image at 4K. 1 to 4 images per request, so 1 to 8 credits. The design page's image studio makes one picture at a time, at 1 credit. |
| Image edit | 1 | 2 at 4K. Charged once per request, however many source images you send. Apply in the image studio is 1. |
| Site assistant answer | 0, then 1 | Free within the monthly allowance below; after that 1 per answer, only if you choose to spend it. |
| Printability check | 0 | Free, and it works without an account. |
| Model import from a URL | 0 | Free. |
| Price quote | 0 | Free and public. |
3D generation add-ons#
The base cost is 1 for fast draft, 2 for hi-fi. Everything below is added on top of it:
| Option | Added |
|---|---|
| Input is an image, image plus text, or multiview | +1 |
| Mesh quality high | +1 |
| Mesh quality ultra | +2 |
| Texture resolution 4k | +1 |
| Texture resolution 8k | +2 |
| Refinement pass | +2 |
- Text prompt, fast draft, standard mesh, 2k texture: 1 credit.
- Photo, fast draft, standard mesh: 2 credits.
- Text prompt, hi-fi, ultra mesh: 4 credits.
- Photo, hi-fi, ultra mesh, 8k texture, refinement pass: 9 credits.
Where credits come from#
| Source | Credits | Price | Cadence |
|---|---|---|---|
| Signup grant | 5 | Free | Once, when your account's credit record is created at email verification |
| Maker plan | 100 | $19 / month | Added on every paid invoice |
| Pro Studio plan | 400 | $49 / month | Added on every paid invoice |
| Small pack | 60 | $10 ($0.17 each) | One-time |
| Medium pack | 150 | $22 ($0.15 each) | One-time |
| Large pack | 400 | $50 ($0.13 each) | One-time |
| Sharing to the community gallery | 1 per 10 shares | Free | Every tenth design you share |
Both plans also carry a monthly dollar print credit — $5 on Maker, $10 on Pro. That is a separate balance in cents, applied to a print order, and it is not interchangeable with generation credits in either direction.
/api/checkoutSigned inCreate a Stripe Checkout session for a credit pack or a plan. This is what the buttons on /pricing call.
typestringrequired- Use credits for a top-up pack, subscription for a plan.
creditssubscriptionproduct packstringoptional- Required when type is credits. Anything else returns 400 'Invalid credit pack'.
smallmediumlarge planstringoptional- Required when type is subscription. Anything else returns 400 'Invalid plan'.
makerpro
The response is { url, sessionId }; send the customer to url. Signed-out callers get 401 'Authentication required', and 503 'Stripe not configured' means billing is switched off in that environment. POST /api/billing/checkout is the equivalent route on the billing surface: it takes the same three packs under type credit_topup and the same two plans under type subscription, and it refuses print orders outright because a print has to be priced from the stored model rather than from a number the browser sent.
Do they expire?#
No. Generation credits are a plain running balance with no expiry date and no monthly reset. A plan's allowance is added to whatever you already hold each time an invoice is paid, so an unused month carries forward. Cancelling a plan clears the plan flag and zeroes the dollar print credit, but the generation balance you have already accumulated is left alone and stays spendable.
| Balance | On a paid invoice | On cancellation |
|---|---|---|
| Generation credits | Allowance is added to the balance | Untouched |
| Print credit (dollars) | Set to the plan's amount for the cycle | Set to $0 |
Running out#
The studio warns you first. On an account without a paid plan, an amber N credits remaining appears once the balance is down to 2. When a run costs more than you hold, the button area reads Insufficient credits — you have X but need Y and Generate is disabled. Signed out, the studio offers Sign up for 5 free credits instead.
Credits are checked and deducted before the engine is called, so an underfunded request is refused rather than half-run. The refusal is machine-readable and tells you exactly how short you are.
{
"error": "no_credits",
"message": "This generation costs 4 credits but you only have 2. Add credits to continue.",
"needsPayment": true,
"creditsRequired": 4,
"creditsAvailable": 2
}| Endpoint | Status when out of credits |
|---|---|
| POST /api/generate | 403 |
| POST /api/retexture | 403 |
| POST /api/images/generate | 402 |
| POST /api/images/edit | 402 |
needsPayment is true until you have paid us for credits at least once — buying any pack or paying any plan invoice flips it. It is a hint for the interface about which prompt to show, not a permission.
Refunds#
Because the charge happens first, a failure has to give the credits back. These do:
- A generation that returns a non-2xx response or throws is refunded on the spot and its history row is marked failed, and History says failed — credit refunded.
- A generation whose model was made but could not be saved is cancelled and refunded, rather than handing you a link that expires.
- A generation still unfinished after 60 minutes is expired by a sweep, marked failed, and refunded.
- A re-texture that fails after the credit was taken is refunded the same way.
- An image job that fails, or finishes with no picture, gives its credit back.
- A site assistant answer paid with a credit that fails to arrive gives the credit back.
Some requests are refused before they would cost anything: a prompt the moderation check rejects, a photo of a flat picture, and an image file that cannot be read. None of them spends a credit.
Limits per account: 20 generations an hour, 40 image generations and 40 image edits an hour, 30 re-textures an hour, and 120 exact model edits an hour.
Every refund is written against an idempotency key derived from the generation id, so the live request and the sweep can race without paying out twice. A refund restores generation credits only — it never changes your plan or your paid-account state.
Checking your balance#
Your balance is attached to your session and re-read on every request, so it is current on any signed-in page without a refresh. The generation API also returns creditsCharged on every successful run, which is the cheapest way for an integration to reconcile what it spent. There is one balance per account, keyed on your email address: a generation started from the Chrome extension spends the same credits as one started on the site.
Questions
Do X3D credits expire?
No. Generation credits are a running balance. A plan adds its allowance to that balance every time an invoice is paid rather than resetting it, so unused credits carry over month to month, and cancelling a plan leaves the balance you already have untouched. The separate dollar print credit that comes with a plan does not roll over.
Do credits pay for a 3D print?
No. Printing is priced in dollars from the weight of the part and charged to a card or a gift card. Ordering a print never spends a credit, and having zero credits does not stop you ordering one.
What does one generation cost?
A fast-draft generation from a text prompt costs 1 credit. Hi-fi costs 2. Add 1 for an image, image-plus-text or multiview input, 1 for high mesh quality or 2 for ultra, 1 for a 4k texture or 2 for 8k, and 2 for a refinement pass, which only changes the result on Meshy. Changing a model with an exact edit is free.
What happens if a generation fails after my credits are taken?
They come back. Credits are deducted before the engine is called, so any non-2xx response or thrown error triggers an automatic refund, and a generation still unfinished after 60 minutes is marked failed and refunded by a sweep. Refunds are keyed per generation, so a retry and the sweep cannot both pay out.
Related guides
- How Much Does 3D Printing Cost? Custom Prints in 2026How much does 3D printing cost? $0.12–$0.25 per gram all-in for FDM plastics, machine time included. 3D printing service pricing and what drives a quote.
- AI 3D Model Quality: Why Prints Look UncannyAI 3D model quality, tested in plastic: why AI 3D models look right on screen and wrong in your hand, from baked textures to the 0.4 mm feature floor.
- Why Is 3D Printing So Expensive? What Drives the CostWhy is 3D printing so expensive? Billable grams × the 3D printing price per gram × a layer multiplier, with a $1 minimum per part, run on four real orders.