How we priced the Quantum Genesis collection off measured rarity
When we made Quantum Genesis, the last thing I wanted to do was invent prices by eye. We had 100 pieces, all generated from real quantum computers, and every one of them carried verifiable metadata about how it was made: which processor ran the circuit, how much true randomness the measurement distribution showed, how complex the composition was. Guessing a number for each felt wrong on principle. If I couldn't explain why piece #42 costs ten times what piece #73 costs, then no one else should be expected to trust a single price in the set.
So we built a pricing model out of the things we could actually measure and verify. This post is the whole thing laid out — the inputs, the formula, what the distribution looked like, and the parts I'd change if we did it again. It's not investment advice and it's not a pitch. It's a record of a decision process, warts and all.

The two usual ways (and why they didn't fit)
Most small projects price a collection one of two ways, and both have a real problem for our case.
Uniform pricing makes every piece the same cost. The problem with a collection that carries meaningful rarity data is that a flat price either underprices the rare pieces or overprices the common ones. The buyers who know the metadata will cherry-pick, and the rest of the set just sits there.
Vibes-based pricing is the opposite — someone stares at each piece and picks a number. That's impossible to defend. "This one looks cool, this one looks meh" isn't an explanation, and it doesn't survive contact with a single skeptical question.
Neither works because both ignore the strongest thing we had going for us: every Quantum Genesis piece is generated from real quantum measurements, which means every piece carries properties we can verify on-chain.
What we had to work with
Each piece records several attributes in its metadata:
- Processor: which quantum computer generated it — Origin Quantum WK_C180 or IBM Quantum ibm_fez/ibm_torino
- Entropy Tier: how much randomness the circuit exhibited (Low, Medium, High, Transcendent)
- Complexity Score: a 0-100 metric from circuit depth, gate count, and measurement distribution
- Entanglement Type: whether the circuit used GHZ-3, Bell pairs, or no entanglement
- Color Palette: the visual theme (Nebula, Plasma, Void, Aurora, etc.)
We picked three of those — entropy tier, processor, and complexity score — as the actual pricing inputs. Palette and entanglement type affect how a piece looks but not how rare it is, so we left them out of the numbers.
Entropy tiers
Entropy tier was the biggest factor. It measures how close a piece's measurement probability distribution is to maximum entropy, i.e. how genuinely "quantum" the randomness was.
| Tier | Shannon Entropy | Count in collection | Base multiplier |
|---|---|---|---|
| Low | < 2.5 | 12 NFT | 1.0x |
| Medium | 2.5 – 3.2 | 45 NFT | 1.5x |
| High | 3.2 – 3.8 | 35 NFT | 3.0x |
| Transcendent | > 3.8 | 8 NFT | 8.0x |
The "Transcendent" tier is the closest a physical machine gets to uniform randomness. Only 8 of the 100 pieces landed there.
Why not call it "Perfect"? Because no physical quantum computer produces perfect randomness. Noise, decoherence, and gate errors always bias the distribution. A Transcendent piece is one where the quantum nature cuts through the noise anyway — which is more interesting, not less.
Processor premium
NFTs #1-18 ran on the Origin Quantum WK_C180 (180 qubits). NFTs #19-100 ran on IBM Quantum ibm_fez and ibm_torino (156 and 133 qubits).
The Origin pieces carried a premium for two reasons that hold up on inspection:
- Volume: only 18 of 100 pieces came from Origin Quantum.
- Access cost: getting real data off that platform is genuinely harder. The documentation is mostly in Chinese, the SDK (pyqpanda3) has sparse English resources, and the API behaves differently from Western providers. The friction of producing those pieces is part of their story.
| Processor | NFT range | Premium |
|---|---|---|
| Origin Quantum WK_C180 | #1-18 | 1.5x |
| IBM Quantum ibm_fez/ibm_torino | #19-100 | 1.0x |
Complexity score weighting
The complexity score (0-100) captures how visually and computationally rich a piece is, driven by the number of distinct measurement outcomes, circuit depth, and how spread out the probability distribution is.
Rather than multiply by the raw score — which would swing prices too wildly — we damped it into a gentle scaling factor:
complexity_factor = 1.0 + (complexity_score / 100) * 0.5
# Score 0 → factor 1.0
# Score 50 → factor 1.25
# Score 100 → factor 1.5
A max-complexity piece costs 50% more than a zero-complexity one. Significant, but not dominant.
The formula
price_eth = base_price × entropy_multiplier × processor_premium × complexity_factor
Where:
base_price = 0.5 ETH (our floor)
entropy_multiplier = {Low: 1.0, Medium: 1.5, High: 3.0, Transcendent: 8.0}
processor_premium = {Origin: 1.5, IBM: 1.0}
complexity_factor = 1.0 + (score / 100) × 0.5
A few worked examples:
| NFT | Processor | Entropy | Complexity | Price |
|---|---|---|---|---|
| #73 | IBM (1.0x) | Low (1.0x) | 35 (1.175x) | 0.5 × 1.0 × 1.0 × 1.175 = 0.59 ETH |
| #45 | IBM (1.0x) | Medium (1.5x) | 60 (1.3x) | 0.5 × 1.5 × 1.0 × 1.3 = 0.98 ETH |
| #7 | Origin (1.5x) | High (3.0x) | 82 (1.41x) | 0.5 × 3.0 × 1.5 × 1.41 = 3.17 ETH |
| #3 | Origin (1.5x) | Transcendent (8.0x) | 95 (1.475x) | 0.5 × 8.0 × 1.5 × 1.475 = 8.85 ETH |
We rounded everything to clean listing values afterwards (0.5, 1.0, 1.5, 3.0, 5.0, 8.0...).
What the distribution came out as
The formula fell into a natural power-law shape — lots of accessible pieces, fewer mid-range ones, and a handful of outliers:
| Price range (ETH) | Count | % of collection |
|---|---|---|
| 0.5 – 1.0 | 40 | 40% |
| 1.0 – 3.0 | 30 | 30% |
| 3.0 – 10.0 | 22 | 22% |
| 10.0 – 50.0 | 6 | 6% |
| 50.0+ | 2 | 2% |
We wanted that shape on purpose. The bulk of the collection stays approachable; the steep tail reflects genuinely rare outliers. I'd rather have a handful of pieces that are provably one-of-a-kind sit far outside the pack than flatten everything into a bell curve.
The psychology bit
Even with a formula, presentation matters. A few choices worth being honest about:
- Anchor high, settle mid. The 50+ ETH pieces make the 3-5 ETH ones read as reasonable by contrast. The premium pieces genuinely are rare, but the contrast effect is real regardless.
- Round numbers. 0.5, 1.0, 1.5, 2.0, 3.0, 5.0, 8.0, 12.0. A price like 2.37 ETH reads as noise.
- A deliberate gap between the 3-10 ETH band and the 50+ band keeps the tiers clearly separated.
- A first-piece premium. NFT #1 gets an extra bump because it was genuinely the first artwork we produced for the project.
Checking against the market
Before fixing the model we looked around at how comparable collections behaved:
- Art Blocks curated drops typically sat at 0.1-1.0 ETH for generative art, with big secondary premiums on rare traits.
- Physics-inspired collections were a smaller niche, priced higher per piece, aimed at a more specialized audience.
- Small collections (100 or fewer) generally price higher per piece than 10K PFP projects, because the set size itself is a source of rarity.
That context put our 0.5 ETH floor in the mid-to-premium range for generative art — above the typical PFP floor, below blue-chip Art Blocks territory. The provenance angle justified the position.
The floor strategy
The floor (lowest listed price) is the number everyone actually sees first, so we treated it carefully:
- Floor of 0.5 ETH — low enough to be approachable, high enough to signal quality.
- Never drop the floor. If the market softens, we delist rather than cut. Lowering the floor signals panic and poisons the whole model.
- List in stages. We listed the 18 Origin pieces first, then released the IBM pieces in batches, rather than dumping all 100 at once.
- 5% royalties on secondary sales through EIP-2981.
Listing notes from OpenSea
A few practical things that only show up when you actually do it:
- Polygon listings are gasless. Listing 100 pieces on Ethereum mainnet would cost real money in gas; on Polygon it doesn't. That alone steered us.
- Metadata must be right before listing. OpenSea caches metadata aggressively. A broken image URL or wrong attribute means a manual per-token refresh that doesn't always take.
- Fixed-price listings over auctions worked better for a new collection without an established audience.
- Collection-level polish matters. Description, banner, cover, social links — set them before you list anything.
- Categories matter for discovery. We put Quantum Genesis under "Art > Generative" to land in front of the generative art crowd.
Pricing turned out to be equal parts arithmetic and judgment. The arithmetic part is what I can show you here — measurable entropy tiers, a processor premium, a complexity factor, a repeatable formula. Anyone can read the metadata, verify a tier, and reproduce the number exactly. That transparency was the whole point. It's also the part I'm most glad we did, because a price you can explain is a price you can stand behind.

These pricing inputs came straight out of the generator's metadata, which we've covered in detail in the art-generation post — and storage was handled through the Pinata/IPFS pipeline. If you spot a flaw in the model, or a better way to weight complexity against entropy, I'd genuinely like to hear it.
Comments
Post a Comment