Scrupl: modern indulgences on the blockchain

Scrupl is based on a primitive developed primarily by Daniel Kronovet called BudgetBox, which takes an arbitrary set of pairwise preferences, and converts that into line items on a budget.

We took this mechanism and used it to create a system whereby anyone can fund social impact, charity, or any other good activity being done out there in the nasty, brutish world.

Given a set of say, 5 projects doing "good", and a budget of say, $100,000 -- Scrupl will allocate funds to each of the 5 projects based upon the votes of those who donate.

Each project's budget allocation is built dynamically from the votes, but the system will smooth out the allocations so that every project gets something, with the distribution reflecting the subjective opinions of all who participate in the voting process. The distribution is fair because math

In order to vote on which project is doing the most good (and thus deserves a larger share of the total budget), you must first purchase scruples, an ERC20 burnable token. If you do bad, you may burn the scruples, and in return receive an NFT which represents the good that a particular project out there in the world is doing. If you cannot fund the good being done out there by the project, it's likely because you have *no scruples ಠ_ಠ *.

Pairwise preferences

The 'votes' built by those who donate scruples are, under the hood, preference matrices of individuals.

As a decision-making mechanism, the preference matrix is really lightweight and easy; voters may choose to load their vote with an exhaustive ranking that expresses a preference for every possible pairing, or they may choose to only weigh in on a single pair.

The budget outputted reflects the aggregate opinions of all who voted, and allocates a percentage of the total budget to each project based upon the probability that a voter would choose that project over all the others.


For the sake of this hackathon we just assumed that all projects being funded already have NFTs that legitimately verify proof-of-goodness. We don't want to tackle any of the very important verification games that must be played in order to trust that good has indeed been done, and is being correctly represented by the digital asset.

Another simplifying assumption is that all the projects doing good are in some way comparable to each other. This means that they have a similar enough focus and a similar enough scale. Apples shall be only compared to apples here.

Although we left it completely open and just used generic NFTs, one really tangible example this could be applied to is carbon credits, and all their various complex methodologies for confirming that carbon is indeed being drawn down.

Tinder for social impact

When using the interface, one is continuously presented with two projects side-by-side. Each click records the preference locally into a single integer that can represent a very, very, large number of project preferences.

You can just keep clicking and building a more complete matrix, but when you get tired or distracted and submit, you are required to burn scruples in order to submit your preferences. Since scruples are sold for real money, this provides a slight disincentive to spam or sybl a favorite project to the top.

This fast-paced, low-attention-span kind of philanthropy seems like something that will really catch on with the millennial crowd.

Built With

Share this project: