Ranking rarity is more of an art than a science. Most rarity algorithms take into account how rare an individual trait is, which is good, but we thought that it was also important to include the rarity of a category in the score we calculate. Our rarity algorithm takes into account both how rare a trait is and how rare the category it's in is, as follows:

*total* = total number of NFTs in the collection

*total_for_category* = total number of NFTs in a particular category (ie. total number of Hats)

*total_for_trait* = total number of NFTs with a particular trait (ie. total number of Chefs Hats)

**category_rarity** = *total* / *total_for_category*

**trait_rarity** = *total* / *total_for_trait*

**trait_rarity_score = sqrt(category_rarity) x trait_rarity**

Let's run through an example of calculating the rarity for a trait on this DeadFellaz. We will focus in on the **Blue tracksuit** attribute

First off, there are 10k total NFTs in the DeadFellaz collection, so *total* = 10000

There are also 10k total NFTs with a **Body** category, so *total_for_category* = 10000

There are 240 NFTs with a **Blue tracksuit** trait, so *total_for_trait* = 240

Now let's run the calculations

**category_rarity** = 10000 / 10000 = 1

**trait_rarity** = 10000 / 240 = 41.6667

**trait_rarity_score** = sqrt(1) * 41.6667 = 41.6667

For some collections, we may add a bonus multiplier to all traits in a specific category. These multipliers are only added at the request of the project creator.