Publishing Assets
List your models, scripts, audio, plugins, and more on the Renzora Marketplace through the publish wizard — either on renzora.com or inside the editor (see Publishing from the editor). Both flows are the same six steps and hit the same API, so this page describes them together.
Become a creator first
Before you can sell, finish the creator setup at Marketplace → Sell (the /marketplace/sell route). It is a three-step onboarding:
- Accept the Marketplace Creator Agreement — confirms you own the rights to what you upload, agree to the 80/20 revenue split, and follow the content rules.
- Connect a payout account — payouts run on Stripe Connect (Stripe Express onboarding). This is required to receive money from paid assets. You can skip it and still publish — you'll just be limited to free assets until you connect Stripe later in Settings.
- Start selling — you're sent to the upload wizard.
The marketplace uses Stripe Connect for payouts, not PayPal or manual bank transfer. The minimum withdrawal is 500 credits ($50) — see Credits System for the payout details.
Uploading your first piece of content also automatically upgrades your account role to creator; you don't have to apply separately.
The publish wizard
Everything is published through one wizard at Marketplace → Upload. You must be signed in (the page shows a sign-in gate otherwise). It's a six-step flow with a progress bar:
| Step | What you do |
|---|---|
| 1 — Content Type | Choose Marketplace Asset or Game. (This page covers assets. Games use the same wizard but post to the game store and ask for platforms and system requirements instead of tags.) |
| 2 — Category | Pick a category. The list is loaded live from /api/marketplace/categories, so it can change over time. |
| 3 — Basic Information | Name, description, version, price — plus tags, download filename, and attribution for assets. |
| 4 — Additional Details | Category-specific fields (see below). Some categories need nothing here. |
| 5 — Files & Media | Your asset file, a cover image, screenshots, and optional video/audio previews. |
| 6 — Review & Publish | Check the summary, then Publish. |
There is no draft step and no review queue. Clicking Publish uploads your files and makes the asset live on the marketplace immediately. (You can later unpublish it from the edit page — see below.)
Publishing from the editor
You don't have to leave the engine to publish. The editor ships a Publish panel that is the same six-step wizard, laid out identically to the website.
Opening it:
- Switch to the Marketplace workspace — Publish is its left pane, with your Library and Wallet beside it.
- Or in the marketplace overlay's toolbar, click Upload Asset.
- Or open the command palette (
Ctrl/Cmd+P) and run Open Publish.
Publish is a dock panel, unlike the store itself, and that's the point: uploading is work you come back to over several sittings, so you want it beside the viewport while you prepare files rather than over the top of it. You must be signed in (sign in from the marketplace overlay first); publishing to a paid price also needs a connected payout account, exactly as on the web.
How it differs from the website (only in mechanics, not in fields):
- File inputs open a native file picker rather than a browser file dialog — one for the main file, the cover image, screenshots (multi-select), and audio previews.
- The same content type → category → basic info → details → files & media → review steps apply, with the same required fields, the same "credited assets are free" rule, and the same live tag autocomplete / submit-a-new-tag behaviour.
- On success the panel shows a View → link that opens the published asset (or game) page in your browser.
Everything below — field rules, category-specific details, size limits, categories, and pricing — applies to both the website and the editor panel.
Step 3 — Basic information
| Field | Rules |
|---|---|
| Name | Required. 1–128 characters. |
| Description | Required. 1–5000 characters. Plain text — Markdown is not rendered. |
| Version | A version string, defaults to 1.0.0 (1–32 characters). |
| Price | In credits. 0 = free. See Pricing below. |
| Tags | Assets only. Up to 5 tags, lowercase, each ≤ 32 characters. |
| Download Filename | Assets only. The filename buyers see when downloading; auto-filled from your uploaded file. |
| Credit / Attribution | Assets only. If the asset is built from another creator's work, name them and link the source. |
Tag review: typing a tag that doesn't exist offers to submit it as a new tag. New tags are created in a pending state and only appear in everyone's autocomplete after a moderator approves them — your asset still keeps the tag in the meantime.
Attribution forces free: if you fill in an Original Creator Name, the price is locked to 0 credits. Credited (re-distributed) assets must be free.
Step 4 — Category-specific details
The wizard shows extra fields based on your content type and category, for example:
- Sound Effects / Music — BPM, genre, loop-friendly flag.
- Scripts / Plugins / Blueprints — scripting language (Lua, Rhai, WGSL, Visual Blueprint) and dependencies.
- 3D Models / Animations — polygon count and texture resolution.
- 2D Art / Textures / Particles — resolution and a "seamlessly tileable" flag.
- Materials & Shaders — render pipeline (PBR, Unlit, Toon, Custom WGSL) and texture resolution.
- All assets — an "AI-assisted" checkbox, supported engine versions, and a license choice.
If your category doesn't need any of these, the step shows "No additional details needed" and you continue.
Step 5 — Files & media
| Upload | Limit |
|---|---|
| Asset file (required) | 200 MB per file (server-enforced). |
| Cover image | Recommended 1280×720 (16:9), PNG or JPG. Max 10 MB. |
| Screenshots | Up to 10 images, max 10 MB each. |
| Video preview (optional) | A URL — YouTube links auto-embed, or a direct .mp4. |
| Audio previews (optional) | MP3 / WAV / OGG / FLAC, max 50 MB each. |
The upload endpoint enforces a hard 200 MB per file cap, even though some categories advertise a larger recommended size in the table below. For anything bigger, split it across multiple files or trim the package.
Categories
Categories are defined server-side. The current set (with the recommended max size and the file types each accepts):
| Category | Slug | Rec. max | Accepted formats |
|---|---|---|---|
| 3D Models | 3d-models | 100 MB | zip, rar, 7z, fbx, obj, gltf, glb, blend |
| Animations | animations | 100 MB | zip, rar, 7z, fbx, bvh |
| Materials & Shaders | materials | 50 MB | zip, rar, material, wgsl |
| Textures & HDRIs | textures | 200 MB | zip, rar, png, jpg, hdr, exr |
| 2D Art & Sprites | 2d-art | 50 MB | zip, rar, png, svg, psd, aseprite |
| Particle Effects | particles | 50 MB | zip, rar, 7z |
| Sound Effects | sfx | 100 MB | zip, rar, wav, ogg, mp3, flac |
| Music | music | 200 MB | zip, rar, wav, ogg, mp3, flac |
| Plugins | plugins | 50 MB | zip, rar, 7z |
| Scripts | scripts | 50 MB | zip, rar, lua, rhai |
| Blueprints | blueprints | 50 MB | zip, rar, blueprint |
| Complete Projects | projects | 500 MB | zip, rar, 7z |
| Themes | themes | 20 MB | zip, rar, json |
| Fonts | fonts | 20 MB | zip, rar, ttf, otf, woff, woff2 |
Accepting an upload format is not the same as the engine loading it at runtime. Renzora loads
.glb/.gltf,.png/.jpg/.hdr,.lua,.ron,.material,.particle, and.ogg/.mp3/.wav/.flacdirectly (.rhaiis still an accepted upload format but no longer runs — its backend was removed); other model formats convert to GLB at import, and.exris not a supported runtime texture. See Browsing & Installing for the full runtime-format note.
Pricing
Prices are set in credits. 1 credit = $0.10 USD.
- Free — set the price to
0. Anyone can download it. Great for building a following. - Paid — set any positive credit amount. You keep 80% of each sale; Renzora takes a 20% platform fee.
- Credited assets are always free — filling in an attribution credit locks the price to 0.
Example: list an asset for 500 credits ($50). Each sale earns you 400 credits ($40); the 100-credit fee covers hosting and payment processing.
You can change the price at any time from the edit page. For how buyers pay, payouts, promo codes, and refunds, see Credits System.
After you publish
Your asset goes live right away at /marketplace/asset/<slug> and starts appearing in browse and search. There is no pre-publication approval gate, but the Creator Agreement still applies:
- You must own or have rights to everything you upload.
- No malware, no IP infringement, no illegal or harmful content.
- Listings must be accurate, functional, and reasonably documented.
Renzora can remove content that violates these terms, and buyers can open refund disputes for non-functional or misrepresented assets (approved refunds are deducted from your balance). Repeated violations can suspend your creator account.
Editing and updating
Open your asset and choose Edit (the /marketplace/asset/<slug>/edit route — only the owner can open it). From there you can:
- Change the name, description, version, and price.
- Replace the thumbnail.
- Replace the asset files — upload several files, or a single
.zipwith a choice to keep it as a zip or extract its contents. Replacing files swaps out all current files. Max 200 MB each. - Add or remove gallery media (screenshots and video URLs).
- Toggle Published on or off — unpublishing hides the asset from the marketplace without deleting it.
Category can't be changed after creation — it's locked in the edit form.
Engine compatibility
Each release states the oldest engine it runs on, chosen from Built for on the new-release page. "Any engine" is the default and means what it says.
The value belongs to the release, not to the listing, and that is the whole design. A listing outlives the engine versions it was built for, so one value per listing could only ever describe the newest release, and stating a newer engine cut everyone below it off from the release that still worked for them.
An editor is offered the newest release built for an engine no newer than its own. So a listing can carry two lines at once:
| Release | Built for | r1-alpha7 gets | r1-alpha8 gets |
|---|---|---|---|
| 1.0.10 | r1-alpha7 | ||
| 2.0.0 | r1-alpha8 | ✓ | |
| 1.0.11 | r1-alpha7 | ✓ |
Publishing 1.0.11 after 2.0.0 is a normal thing to do: it is a fix to the r1-alpha7 line, and it reaches r1-alpha7 users without touching what r1-alpha8 users resolve.
There is no maximum version. The ceiling on a release is implied by the next release that names a newer engine, so it never has to be written down and can never go stale. A plugin nobody has updated for the current engine keeps being offered, on the assumption it still works, which is what cargo and npm do; the alternative freezes the whole catalogue every time the engine moves.
One rule to keep in mind
Because an editor takes the highest version it can run, a release on an older line must stay below everything on a newer line. Publishing 3.0.0 for r1-alpha7 while 2.0.0 sits on r1-alpha8 would hand r1-alpha8 users the r1-alpha7 code, since they can run both and yours sorts higher. renzora publish refuses that, and says which release it clashes with.
Correcting a release
A release's engine can be changed after publishing, from the dropdown beside it in Release history. The engine a release needs is a claim about code that already shipped, and the usual way it turns out to be wrong is somebody installing it and watching it fail to load; a republish would spend a version number on a metadata fix. Only that release moves.
What an editor shows
An editor browsing the marketplace sees only listings it has a runnable release of, labelled with the version it would actually get. If you are current for your engine and something newer exists behind an engine upgrade, the update check says so ("needs a newer editor") rather than staying quiet, which would make a maintained plugin look abandoned.
How a new release reaches people who already have it
Publishing a plugin release is all you have to do. Shortly after an editor starts it asks the marketplace what it should be on for every plugin it has installed, and anything behind shows up as an amber Update on its card, in the marketplace's Updates view, in Settings ▸ Editor ▸ Plugins, in the software update dialog, and in the exporter's plugin list.
Users can turn off the startup reminder, but not the marks: the four views answer whenever they are opened. A release that needs a newer editor than someone is running is still listed for them, as "needs a newer editor" beside the version it wants, so an upgrade they were going to do anyway picks it up.
What this means for you is that a patch reaches installed users without them going looking, so a small fix is worth publishing rather than saving up. See Browsing & Installing for what they see.
Moving a listing to another category
A listing's category is set when it is created, and publishing a release never changes it. A marketplace admin can move one, keeping its page, downloads and reviews:
- From the CLI, in the same run as the release that matches the new category: set the new
categoryin the manifest and runrenzora publish --move-category. The listing moves first, then the release uploads; if the upload fails the listing is moved back. Without the flag, a manifest whose category differs from its listing's is refused, so it cannot happen by accident. - From the website, with the Category dropdown on the admin panel's Assets tab. Publish a matching release straight after.
How a download installs follows the listing's category, not the release: a plugin is kept as a zip and built, most other categories are unpacked into their folder. So after a move, every release installs the new way, the older ones included. When a set of plugins became shader files, for example, an editor too old for the shader release still sees the newest plugin release it can run, and installing it now unpacks that plugin's source into shaders/, where nothing loads it. Give the release in the new category a newer engine floor and accept that older editors lose the listing, or keep the old listing and publish to a new one.
Tracking performance
Your Dashboard is where you manage published content. The header shows four totals — Assets, Downloads, Earnings (credits), and Balance (credits) — and the tabs below let you:
- Browse your Assets and Games, each row showing its downloads, views, and a Published / Draft status dot.
- Open the Earnings tab for your credit transaction history.
Performance over time
Above the tabs, a Performance card charts views and downloads across everything you have published, switchable between the last 30 days, 12 weeks and 12 months. Each asset's own page carries the same chart for that asset alone, visible to anyone who opens it.
Views and downloads are drawn as two panels rather than two lines on one axis. Views outnumber downloads many times over, so a shared scale would flatten the downloads line onto the floor, and a second axis would let the two be made to cross wherever the scales happened to land. Hovering either panel puts a crosshair through both and reads out the day's two numbers together, which is the comparison worth making.
A day nothing happened is drawn as a zero rather than skipped, so a quiet week looks quiet instead of looking like a straight line between the days either side of it.
Still not included: geographic or referrer breakdowns, and any split between the website and the editor. A view is a view wherever it came from.
What counts
- A view is one opening of the asset's listing, whether that is its page on the website or its card in the editor's marketplace. Repeat looks from the same place inside 24 hours count once, so reopening a card while you work does not inflate anything. Your own unpublished drafts count nothing.
- A download is one install, counted once whether the asset arrived as a single file or as a zip of many, and whether or not the person installing it was signed in. Previewing an asset does not count: spinning a model in the viewer, auditioning a theme and opening the embed all fetch the file without touching the number.
Best practices
- Use a clean cover image — 16:9 at 1280×720, showing the asset in a real scene rather than a gray void.
- Add screenshots — up to 10; they populate the gallery on your asset page.
- Write an accurate description — say exactly what's included, the formats, and any dependencies. It's plain text, so keep it scannable.
- Test in a fresh project before uploading so nothing is missing from the package.
- Credit your sources — if you redistribute someone else's work, attribute them (and remember it publishes free).
Related
- Browsing & Installing — how buyers find and install your asset.
- Credits System — pricing, payouts, promo codes, and refunds.