OpenZeppelin Consensys Diligence Code4rena
OpenZeppelin Consensys Diligence Code4rena
Price Market cap.
Last updated: Nov 23, 2022
PoolTogether is a protocol designed to replicate the idea of Prize-linked savings account. The platform generates yield on users’ deposits and then splits it amongst the lucky winners. The company claims there is no risk for deposits, which is possible since the earnings are made up only of the interest that accrues on deposited funds.
The project has been live for two years now, currently in its V4, and claims to have already distributed over $5 million in prizes to depositors. Profiters are chosen at random at the end of each day and rewards are distributed timely.
The logic of the PoolTogether dApp is divided into two major modules. Yield capture and prize distribution. To capture yield, the protocol needs users to deposit assets to its Prize Pools, following which they get “Ticket” tokens representing their investment. PoolTogether then deposits these funds into yield farming services such as Compound, Aave, or Yearn, where the digital assets start accruing interest.
Since different Prize Pools have different Prize Split Strategies that determine how interest is distributed, users of the platform can check, review and choose the pool representing the strategy they are interested in the most. When distributing prizes, the project does it through regular prize drawings. These Draws are emitted by a Draw Beacon and represent a random number and a timestamp.
Each Draw has a start time and a period, these factors together determine when Draws can be created, since when the period has elapsed, anyone is free to create a new Draw, which is pushed onto a Draw Buffer, where the last 256 Draws are stored. This is needed, because later when the payout for the draw is calculated, the Draw Calculator needs to retrieve the Draw and Prize Distribution for the given Draw, to calculate winners and their share of the prize pool.
Whenever a new Draw is available, users can claim prizes through the Prize Distributor smart contract, where the prize liquidity for all Draws is held. To determine users’ payouts’ size the protocol employs the Tsunami Draw Calculator, which calculates payouts through the Tsunami algorithm, which is the statistical algorithm randomly generating the infinite numbers of prizes on different prize tiers.
To connect with the PoolTogether app, users need to connect a wallet to it and approve the protocol’s use of the tokens in the wallet. This is a one-time approval and doesn’t make a deposit to the protocol but only enables it to use the tokens in the wallet. Once the approval transaction has been completed, the PoolTogether dApp will automatically load a “Deposit Confirmation” screen where the deposit can be confirmed and sent.
Once deposited, users are considered eligible for participation in each draw until they withdraw their deposit from the platform, without needing to confirm, approve or deposit their funds again. It is important to note that prizes must be claimed within 60 days of their announcement, otherwise they expire. To check for prices, users need to simply navigate to the Prizes tab, where all information regarding possible profits is to be displayed.
Another feature made available to the users of the platform is the Deposit delegator smart contract which is meant to allow customers to delegate portions of their deposit to numerous wallets. This is aimed to answer the demand from protocols to deposit treasury funds and delegate possible profit to their users or token-holders, or cases when prizes are meant to be distributed to users holding specific NFTs, or wallets having done particular actions during a set time frame. Many customizable conditions to be met in the contract also allow for other use cases, including the appointment of Representatives who are meant to manage delegations on behalf of the delegators.
There are no fees PoolTogether collects from its users, and the wallets PoolTogether supports include Metamask among other web-based extension wallets.
PoolTogether’s token POOL has a total supply of 10 million, a dynamic part of it, starting from 48%, is controlled by the company’s Treasury through proposals and voting of POOL token holders. The rest of the tokens have been distributed as follows. 1.5 million were given to early users of the protocol, however around 400,000 of them remained unclaimed in the distribution contract.1.2 million tokens were given to early contributors of the project under a one-year lock up ending on February 17th, 2022. 750,000 POOL tokens were given to investors in PoolTogether Inc. also subject to the same period of lock up. 411,000 POOL tokens were distributed to users in exchange for USDC to diversify the funds held in the Treasury, through a proposal on the governance platform of PoolTogether.
POOL is the project’s governance token. Users holding it have full control on the protocol’s parameters through voting. POOL holders can manage the distribution of POOL tokens, as well as the Treasury itself, and prize parameters including the number of winners per week.
The only requirement to submitting changes to the protocol is that the proposer holds or has at least 10,000 POOL tokens’ governance power delegated to them. If this requirement is met, the proposal is submitted for voting from all token holders for five days. At the end of the voting period, the proposal can be accepted not only if the majority of voters have approved it, but also only if at least 100,000 votes have been cast in favor of the proposal. Following that, there is a two-day timelock before the actual implementation of the proposal.
When the project was launched, the POOL token was used as an additional incentive to deposit into the protocol in cases where the deposits in the pools were not large enough to generate sufficient rewards to satisfy users and attract new ones. It was also given to users as an additional reward, which incentivized further deposits and growth of the total value of the assets locked on the platform.
The protocol also captures a Reserve percent of every prize in the prize pool and places it under the control of POOL token holders. These funds are meant to make prizes larger without diluting the odds of winning, which further increases the reserve as it grows with each prize. The reserve funds are public and can be viewed here.
POOL token holders can stake them on the platform’s staking pool for additional rewards and enable voting without transaction fees.
PoolTogether Inc. – the company which developed PoolTogether is currently undergoing legal action due to a lawsuit filed under New State law. The Kent v. PoolTogether Inc. et al, Joseph Kent claims that the company is an illegal lottery. The case is still ongoing.
The PoolTogether team is led by co-founders of the PoolTogether Inc. company which created the platform - Leighton Cusack and Brendan Asselstine. Brendan Asselstine is also co-founder of Delta Camp Blockchain Consultancy firm and has past work experience as a dApp developer at MedCredits, blockchain development consultant, and senior developer at Loft47 and other companies.
Leighton Cusack, the current CEO of PoolTogether Inc. is also co-founder of Kindrid – a nonprofit donation-oriented project. He is known to have invested $800k in Syndicate – a decentralized asset management platform and social network, in a Seed Funding Round in June 2021.
PoolTogether audits are available for review in the project’s dashboard on our website. The company also runs a bug bounty program with prices of up to $50,000.
PoolTogether partners with Pillar Wallet which features native integration with the protocol, allowing users to purchase tokens and join prize pools on PoolTogether without leaving the app. Before diversifying the projects in which users’ deposits are invested by the platform the company used only Compound Finance to generate interest. PoolTogether also supports Zapper, Zerion, and Orange.
The team has not released any future roadmap, but there are speculations about work being done for supporting more blockchains and more platforms generating interest on deposits in prize pools.
Winamp announces support for music NFTs with its latest update
Nexo exits US due to regulators pressure