Polymarket Relayer Community Announcement

Polymarket
6 min readJan 6, 2021

Tl;dr: Due to rising Ethereum transaction fees and Polymarket usage, deposits and withdrawals have been experiencing regular delays. We hear our community’s suggestions and are tirelessly working on solutions, outlined in this post, to remedy the situation.

Dear Polymarket community,

We’d like to start by wishing you all a happy New Year. In 2020, Polymarket experienced exponential growth at a level unprecedented for any fully on-chain consumer application, and we are enormously appreciative of all of you for using and contributing to our platform. That growth has not come without difficulties, though, as many users will have noticed or experienced recently.

As our platform has scaled, there has been a rapid increase in the frequency of deposits and withdrawals, each of which, under the hood, requires Ethereum transactions to be executed. As a method of abstracting the underlying technicalities of the Polymarket product, and keeping friction low for new users, we mask these transactions and subsidize the ETH-denominated fees (pay for them). This worked great to start because it allowed us to get to market quickly, but has quickly become unsustainable given the cost. This is also, in part, due to Ethereum’s rising gas cost as well as the price of ETH.

Consequently, the relayers — used to pay for the blockchain transaction fees associated with deposits & withdrawals on behalf of users — have been running out of funds far more often than users are accustomed to. To be clear, this is not a matter of user funds themselves being in jeopardy, but rather the blockchain transaction fees which we pay for on behalf of users. In short, keeping the relayer functional for a full day (in its current state) now requires upwards of $25,000. It goes without saying that this level of expense is unsustainable and that we’re looking to quickly implement a solution.

There are 3 stages to that solution:

  1. For now, we will be topping up the relayers with 2 ETH (~$2,200) every 2 hours between 12–6 PM EST. IF GAS IS ABOVE 150, THESE TOP-UPS WILL NOT OCCUR as the cost is prohibitively high. Usage of those funds for free deposits/withdrawals will be on a first-come, first-served basis. We are also working on implementing a Metamask-usable USDC deposit with which users can deposit USDC into their Polymarket account whenever they want by paying ETH fees themselves. Additionally, if you urgently need to withdraw a large amount, you can top up the relayer yourself by following the tutorial at the end of this document.
  2. We will soon implement a system wherein free withdrawals will likely be limited to one every 3 days per user. Beyond that, users will have to pay for an expedited withdrawal, at a cost roughly aligned with the true cost of that transaction, ranging from $35-$100. We will begin internal testing of this tomorrow and hope to implement it early next week.
  3. One eventual solution we’re optimistic about involves Connext, which would enable users to deposit and withdraw USDC into their Polymarket wallet near-instantly and inexpensively. Connext enables users to send USDC on Ethereum to a given address, in similar fashion to the current user experience, and then receive USDC in their Polymarket wallet on L2/Matic, circumventing the need to bridge the USDC via smart contract for every deposit and withdrawal, which is what’s most expensive. Polymarket is their flagship use case they’re targeting, and our teams are working together on this integration. We anticipate that it will be ready by early-February.

We’re incredibly excited to be launching Connext with Polymarket as our pilot use case. Polymarket, built on top of Matic, has the most traction out of any live L2 application today. A big problem Polymarket faces is the high gas cost + 7–30 minute wait time for entering and exiting L2 from Ethereum. With Connext, users deposit funds directly into a state channel which enables instant swapping to and from USDC liquidity reserves on Matic — this reduces the time taken to enter and exit Polymarket to one Ethereum block and additionally circumvents the high gas costs of the Matic PoS bridge flow. — Arjun Bhuptani, CEO of Connext

We must emphasize that the Polymarket team has no access to your funds, and the relayer serves only as a method for passing transaction fees from users to the platform itself, with the goal of lowering onboarding friction for users. Your money remains secure.

We also recognize that communication on this issue has fallen short of your expectations, and hope that efforts in the past few days to remedy that issue have signaled our intention to improve in this regard. Improved communication with our community is a critical step in implementing this solution and in building the world’s leading information markets platform.

All the best,

The Polymarket Team

Relayer deposit tutorial:

If you urgently need to make a deposit or withdrawal from your Polymarket wallet, that’s also possible by topping up the relayers with your own ETH. Upon topping-up, however, you will need to be one of the first users to execute a deposit/withdrawal, as the same relayers are used for everyone, so there is no way to prevent other people from using your provided ETH to execute their own transactions. If enough transactions are submitted before yours, it’s still possible yours won’t go through. We suggest checking ethgasstation and topping-up at a time when the “High” section is < 100. This is not the most optimal solution, but nonetheless, the pros of instant withdrawals or deposits outweigh the cons in some situations.

To get the relayers to work, we’d suggest topping-up with at least .2 ETH, and then executing your withdrawal or deposit directly after. The more you deposit, the more likely it is that your specific deposit or withdrawal will be successful. You should understand that this likely only makes sense if you are attempting a large transaction that is critically urgent.

There are two relayers that both accept Ether/ETH (and no other cryptocurrency). Transactions will only go through if both are sufficiently funded — typically only one is out of funds at any given time. Here’s how you can top-up the relayers yourself:

The first relayer accepts deposits of any amount, and is as simple as sending ETH to this address: 0x64ff2d76fe3095fb9f0a18c088b345ffd2bf8e85

The second relayer requires Metamask, as well as ETH in your wallet (for transaction fees). You will first need to connect your Metamask extension to this webpage in order to see the data. Then, enter an amount in the “Deposit Amount” space specified, and then you will be prompted in Metamask to approve the transaction. Specify a gas fee (higher = a faster transaction) and your deposit will be processed.

Connect by clicking on “not collected” and following the prompt.

https://gsn-site.vercel.app/recipients/0xaB45c5A4B0c941a2F231C04C3f49182e1A254052

Please note that for either relayer to function, both need to have some amount of ETH deposited. Check the current balance of both relayers (links: Relayer 1, Relayer 2 (need to connect your metamask to see)) before depositing, and choose the one which is empty.

Metamask Deposit Tutorial:

As noted in our recent community announcement, deposits and withdrawals have been experiencing regular delays and failures as the result of rising Ethereum transaction fees and Polymarket usage.

In order to facilitate deposits, we have now implemented the ability for users deposit USDC via Metamask. You can achieve this on Polymarket by using the “Metamask Deposit” button.

You will first need to approve access & connect Metamask to the Polymarket website. You must then specify the amount you wish to deposit. There will then be two transactions to confirm: the first for allowance, and the second for the actual deposit.

Disclaimer: This requires some level of technical proficiency in interacting with Metamask, a cryptocurrency wallet. If you are not comfortable interacting with Metamask to deposit, we do not recommend using this feature. Metamask can be downloaded at Metamask.io, and our support team is available to assist.

--

--