A non-fungible token is a token that is unique to itself, and therefore not interchangeable. Non-fungible tokens have unique attributes that make each individual token fully unique. Those attributes are baked into the smart contract. Think of how a priceless work such as a Picasso is not interchangeable with another work of art, even if it's another Picasso. There can only be one Mona Lisa, and a John Olsen original is a John Olsen original.