project screenshot 1
project screenshot 2
project screenshot 3


Community Bound Tokens (CBTs) are ERC-20 tokens that can only be transferred among members of a community, which can be used for reputation, community merit based governance, opt-in social credit score, coordination games or engagement scores.


Created At

ETHGlobal Paris

Winner of


🥇 Push Protocol — Best All Round


🏆 ETHGlobal Paris 2023 Finalist

Project Description

Community Bound Tokens (CBTs) is a potential new standard for tokens that are tight to a specific community of members (or a group of addresses), as defined by mathematics (cryptographically) through for example memberships to a multi-signature wallet, or an ERC-721.

It's up to the community to decide how much they value certain actions and how many reputation points they attach to them. Preferably these actions are onchain so the CBTs can be dropped automatically to the earners, but they can also be off-chain by allowing the community to give CBTs retroactively based on a performed activity in the real world. Later on, these tokens can be used as a merit-based governance, for reputation, as a community credit score for under-collaterlised loans, or any creative ways the community can think of.

For this specific example project, we forked a Safe{Wallet} and added a social layer to it. The purpose was to showcase how you can attach a specific value of CBTs to specific actions inside a Safe, and make a multi-sig more engaging to interact with by adding a Feed/Chat and reputation points to the proposed actions. When a proposal is passed, the proposer receives the reputation points (RP) that are attached to these specific types of proposals. They can range from proposing a new member, to proposing swaps, buying an ENS, or putting the community treasury to generate yield.

How it's Made

We modified two parameters of the standard ERC-20 token to make it transferable to only a whitelist of addresses that comes, for example, from a Safe.

The deployed ERC-20 can only be ownable by community members, which in this case can only be added by the Safe multi-sig owner (the Safe itself). The functions mint() and transfer() can only be executed by the members of that community.

We forked Safe{Wallet} and integrated Push Chat into it. We then used Hardhat to deploy our custom made ERC-20 Community Bound Token to Sepolia, Linea, Gnosis Chain, Mantle, Zetachain and Celo.

background image mobile

Join the mailing list

Get the latest news and updates