Upload an image, then compress and resize it entirely in your browser so you can see exactly what it will cost to store on-chain as base64 text — no server, no IPFS. This step doesn't touch the blockchain: nothing is minted or uploaded anywhere yet.
Why size matters here
A minted NFT on gno.land with no IPFS/server backing it stores the image as a base64-encoded string directly in the realm's own on-chain storage — and storage is billed by the byte (confirmed identical on both gno.land testnet and Beta Mainnet: 100 ugnot per byte, i.e. 0.0001 GNOT/byte). Base64 also inflates the raw file by about a third. A full-resolution photo can easily cost tens of GNOT to mint this way — resizing and re-compressing first is the difference between a mint that's affordable and one that isn't.
Compress & resize
Changes apply live to the preview below.
Max width/heightpx, longest side (0 = don't resize)
Output format
Quality80
Original
Compressed preview
Size & estimated mint cost
Original file
Compressed file
On-chain payload
Estimated storage cost
Storage rate (100 ugnot/byte) is a confirmed on-chain parameter, but the exact byte count a real mint transaction bills can differ slightly from this string's raw length depending on the realm's own storage layout — treat this as a close estimate, not a quoted price. Nothing here has touched the blockchain.
Data URI
This exact string is what a mint transaction stores as the token's image field — the compressed image above, wrapped in a small SVG container. That wrapping is required: gno.land's own page renderer (gnoweb) only displays data:image/svg+xml images inline — every other image type is silently hidden on the collection's own gno.land page (its real data is still there and works everywhere else, e.g. wallets, marketplaces — just not shown on that one page). Wrapping adds real size/cost, shown below.
Checking wallet…
Collection
Every mint is public and uncapped — anyone can call it, any number of times, once pieces are queued. No per-wallet limit, no price, no delayed reveal: this is the simple version of the pattern, meant to be extended later.
Collection name
SymbolPackage path segment
Off just hides the image from the realm's public gnoweb page — every token's real metadata (what wallets/marketplaces read) always has the image either way. Owner-adjustable later too.
Your collections
Package path
Active collection
Gno.land page
Owner
Minted so far
Queued, unminted
Minting
Images on gnoweb page
Queue & mint this piece
Only the collection owner can queue a piece (AddPresetToken); once queued, Mint is public — anyone (including you) can claim a uniformly-random piece from whatever's queued.
Name
Description
External URLBackground color
Attributes
Recently minted
Your mints this session
Pieces you've just minted here, each with a direct link to its own gno.land page.