NFT Trait Rarity for Creators: Weights, Exact Counts, None

By Puffles StudioPublished Updated

Give each trait a weight to set how common it is next to the others in its folder, or an exact count when it must appear a set number of times. Puffles Studio turns weights into whole-number counts that always add up to your collection size, and reports the result in rarity.csv.

Weights and exact counts: the difference

A weight says how common a trait is compared with the others in its folder: a trait with weight 2 turns up about twice as often as one with weight 1. An exact count says how many NFTs get the trait, full stop: 10 means 10.

In the studio’s Traits tab, each trait has a Weight or Exact count switch next to its number. You can mix both in one folder: counted traits take their share first, and weighted ones split what is left.

How weights turn into exact numbers

In Puffles Studio, weights are not dice rolls. Before anything is drawn, each folder’s weights become whole-number counts that add up to exactly the collection size. Here is the starter kit’s Headwear folder at 100 NFTs, with the Crown’s weight lowered to 0.25:

Real counts from the studio’s planner
TraitWeightShare of 100Count
None123.5324
Beanie123.5324
Crown0.255.886
Bucket123.5323
Daisy123.5323
Total4.25100100

Each trait first gets the whole part of its share: 23, 23, 5, 23 and 23, which makes 97. The 3 left over go to the biggest remainders: the Crown’s 0.88 first, then the first two traits in the list, whose 0.53 ties with the others. This is called largest-remainder rounding, and it is why the counts always add up.

Setting a weight in the file name

Add #N to the end of a file name and the trait arrives with that weight: Crown#5.png becomes “Crown” with weight 5. Decimals work, so Crown#0.5.png is weight 0.5. Files without # get weight 1, and you can change any weight after import (how to name your files).

A Crown at 5 next to the three other hats and None, each at 1, gave 56 Crowns and 11 of each of the others at 100 NFTs. A weight of 0 means never.

When to use an exact count

Use an exact count when the number itself matters: exactly 10 gold crowns, one per team member, or a trait you promised. Set the Crown to an exact count of 10 in the starter kit and the three other hats and None share the remaining 90 by weight: 23, 23, 22 and 22.

An exact count is also the fix for a trait so rare it rounds to 0. The studio warns you by name when that happens.

The None choice

“Add empty trait” adds a None choice to a folder, so some NFTs go without that layer. None takes a share like any other trait. In the starter kit as it ships, with every hat and None at weight 1, 20 of the 100 NFTs have no hat.

None never appears in the metadata: an NFT without a hat simply has no Headwear attribute, and its cell in the OpenSea CSV is empty. It does appear in rarity.csv, so you can see how many went without.

Rare traits still need room

A trait can only appear as many times as there are different NFTs to carry it. If a weight asks for more, the studio refuses and names the trait. How many traits do you need for 10,000 NFTs? shows the maths.

Check the plan: rarity.csv

Every export includes rarity.csv, counted from the finished collection. For the example above it ends:

Layer,Trait,Count,Percent
…
Headwear,None,24,24
Headwear,Beanie,24,24
Headwear,Crown,6,6
Headwear,Bucket,23,23
Headwear,Daisy,23,23

Percentages are of the whole collection, 1 of 1s included, and each 1 of 1 gets its own row with a count of 1 (how 1 of 1s work).

The rarity rankings buyers see

Marketplaces and ranking sites work out their own rarity numbers from a finished, published collection, for example by dividing the collection size by how many NFTs share each trait (Hedera). OpenRarity, an open project from Curio, icy.tools, OpenSea and PROOF, publishes one such method.

Puffles Studio doesn’t rank NFTs. It sets how often each trait appears, which is what those rankings are later built from.

Questions people ask

What does a weight of 5 mean?

Five times as common as a trait with weight 1 in the same folder. In the starter kit at 100 NFTs, a Crown at 5 next to the three other hats and None, each at 1, came out as 56 Crowns and 11 of each of the others.

Weights or exact counts: which should I use?

Weights for the general mix, exact counts when the number matters, like exactly 10 gold crowns. You can mix both in one folder.

Why is my rare trait missing?

Its weight rounds to 0 at your collection size. The studio warns you by name; give the trait an exact count to force it in.

Does None show on OpenSea?

No. None is left out of the metadata, so the NFT simply has no trait for that folder, and its cell in the OpenSea CSV is empty.

Does Puffles give my NFTs a rarity rank?

No. It sets how often each trait appears and reports the counts in rarity.csv. Rankings are worked out by marketplaces and other tools once a collection is published.