GSN: The Ultimate Ethereum Onboarding Solution

Gas Station Network is an open-source service that allows developers to create unique decentralized applications that are indistinguishable from your favorite Web 2.0 apps. Applications can now assume the transaction costs of their users as part of their Customer Acquisition Cost. GSN is not only a must for onboarding, but it is also the key that unlocks new and disruptive business models within the blockchain paradigm.

This time is not different

Technology evolves in cycles. In the last 40 years, we have seen major technology cycles appear, consolidate and cannibalize the previous cycle. Microsoft spearheaded the Software era, a period where the technology of the previous paradigm — microprocessors — was commoditized. Web giants revolutionized software and started a new age built on top of open source. Proprietary software became less relevant and was replaced by data.

Right now, crypto networks are starting a new paradigm shift where data gets commoditized and open access to networks and resources becomes the new norm.

Labor pains

Within every transition, the developers working on the new paradigm struggle with the tension of competing with incumbents while keeping technology and access costs low.

More Links Anyone?? Ahhh, the joys of 1990s websites.

During the first years, the new technical challenges cause great friction. These challenges make it an incredibly difficult task to prove the new technology value add. Remember for example the shift from desktop applications to the web. Creating a website in the 1990s wasn’t an obvious improvement. ROI wasn’t clear because you couldn’t charge money online and there weren’t many people surfing the web.

“By 2005 or so, it will become clear that the Internet’s impact on the economy has been no greater than the fax machine’s.” — Nobel Prize Winner, Paul Krugman”

In this context, to create a website you needed to purchase a domain, buy some servers, code your website and then pay a monthly fee to keep the servers up. Right now, all these friction points and costs have been hidden and you can drag and drop your way to a simple website using Wix or Squarespace.

Lack of viable and disruptive business models exacerbates the issue. Unable to find a way to monetize the technology, new entrants lack time to polish and are forced to shove the challenges and costs down consumer’s throats.

Cloud storage is a great example. Cloud providers like Amazon provided storage (S3) for a reasonable fee. You pay for every megabyte of the files you store depending on you often you access the files. Incredible innovation that wasn’t apparent for end users. The pricing model based on technology, along with an obscure value add — backups on the clouds — prevented the adoption from mainstream consumers.

How obvious was in retrospective? It just works. Extracted from Dropbox Seed Deck

Dropbox changed the landscape completely. They hid the complexity away from consumers and gave them a value add they can understand. Put your files here and you will never lose them. Hey, you can also access them for every device. You can put many files for free but if you have more you need to pay a monthly fee.

A visit to the dentist

Welcome to blockchain applications. Dapps are the quintessential example of pain caused by a new paradigm. Blockchain apps can pride themselves of causing the most frustration per minute. They scare prospects away faster than a dentist scares away a kid on his first visit.

Let’s now focus on the other side. Check the flow of a typical user — let’s call him Pete — that is interacting with his first dapp, a unicorn game:

Pete lands on the site. CryptoUnicorns welcomes him.

“Looks great”

Pete clicks on the “New Game” button. Pete is asked to install Metamask.

“Hmm, why do I need to install a fox to get my unicorn??”

Pete is asked to create a wallet and save his private seed backup.

“WTF? What is a wallet? What is a seed?”

Pete can now access the game. Great! Pete now clicks to breed his first unicorn. Not so fast Pete. He doesn’t have ETH. You send him to a crypto exchange.

“Really? I just want to play with unicorns :(”

Pete needs to buy some ETH.

“Well, it’s only $5 dollars”

Pete needs to send ETH to his Metamask account.

“Where am I sending my money again? Is this mysterious fox stealing my money?”

Pete user clicks the breed button again and can finally create his first unicorn. Can he?

“Oh no! Here is the fox again.”

Pete needs to sign a transaction that looks like gibberish i.e 214g5j23y5gg452yi145.

“Is this supposed to be my unicorn??”

Pete needs to wait for a minute before it confirms.

“This is it. I hate unicorns.”

Pete will never be back.

We are forcing the end-users to deal with the technical burden and monetary cost of using blockchain technology. @rohamg cited CryptoKitties saw a 99% dropoff in their funnel.

This is hardly a surprise.

Firstly, users need to pay transaction costs every single time they need to interact with the blockchain. Secondly, because you are forcing users to pay, you are also leaving them to deal with all the technical details. These include:

  • Installing browser extensions to be able to use or even see a website
  • Signing up for accounts in exchanges requiring to connect your bank account
  • Spending their hard-earned money on magic internet credits just to use an app!
  • Understanding Private & Public Keys.

Look at this beauty 0xC2D7CF95645D33006175B78989035C7c9061d3F9

This would be the equivalent of Uber or Airbnb forcing you to pay every time you search for a home or request a ride.

Sorry, your search caused 323 read operations and spent 7 secs of CPU time. It’s 23cents.

Dilbert by Scott Adams

This is nonsense. Consumers don’t care and don’t need to know how your system work.

On top of that, few decentralized applications have product-market fit. Most of them can be considered interesting experiments. Experiments that look like toys. They are interesting technically but with a dubious value add for mainstream consumers.

Remember, “If it’s useless and decentralized, it’s still useless.”

We need to hide the technical complexity and charge users for something they actually want.

Meet your old friend CAC

If you are using blockchain, you need to figure out a way of providing unique value for your users. You need to hide all the blockchain technical complexities and the cost associated with it. Transaction costs and gas fees are now part of your customer acquisition cost (CAC). Deal with it. Your users won’t.

Obviously, your business model needs to be able to support this customer acquisition cost or you won’t have a viable business. You need to seriously question why are you using blockchain and what’s the unique value you are providing to your users. Then figure out a business model that can sustain the costs associated with it.

Blockchain gives us programmable money, permissionless collaboration, and composability. Disruptive business models unique to the blockchain will dominate this era. We still haven’t found them but we are seeing interesting experiments like Numeraire, MakerDAO or Instadapp.

As the technology matures, the costs will decrease allowing more and more experimentation around business models.

Meet GSN

Today, we are excited to announce the release of the Gas Station Network(GSN). GSN is a decentralized service that Ethereum developers can start using today to shield users from technical complexities.

An app is worth a thousand words so try our sample app powered by GSN, created by Dennison Bertram:

No Metamask required. No ETH required. Don’t you feel lighter?

First of all, we want to highlight that GSN is an open-source project. A project created by a collaborative effort from the Ethereum ecosystem and the Metacartel group in particular. TabooKey envisioned the concept behind it and created the initial prototype presented during ETHDenver. Then, OpenZeppelin audited the system and pushed the project until where it is today. Support from Portis, Groundhog, BurnerWallet, and Pillar has been also instrumental in releasing this project.

GSN is a network of servers — called relayers — that are waiting to execute transactions. Each relayer gets paid for every transaction put on the blockchain. Relayers are incentivized to behave correctly and not cheat.

Best of all, GSN doesn’t require any centralized server or entity to organize it. Your application gets a response with all the available relayers. These relayers are stored on Ethereum inside the RelayHub smart contract. Your app can choose the relayer that is going to execute the transaction based on its reputation. Once you choose a relayer, it immediately replies to you confirming the request. If it doesn’t, you can switch to another relay right away.

The service is open and transparent. Anyone can run a relayer. We welcome everyone to join us and add new relayers to the ecosystem. You can set your own fee and you will be rewarded for every transaction that you submit to the blockchain.

However, if you just want to use GSN, you don’t need to run one. You can just modify your dapp to integrate with the GSN via OpenZeppelin contracts and interact with it via a new Web3 provider. You only to specify under which conditions your dapp pays for the transactions and that’s it.

Unlocking innovation

Gas Station Network can unleash a new wave of innovation within Ethereum and the blockchain space as a whole. Technically, it can solve all these problems for you:

  • 10x your onboarding funnel. No need to install Metamask, send them away to buy ETH or ask them to spend their money on your app before they use it.
  • Hide private & public keys. Your users don’t even need to worry about it but they can still get the benefits from owning their data and assets.
  • Faster and more reliable transaction times. Your application chooses which relay will execute the transaction and then you get the signed transaction right away.

Additionally, it enables unique business models within your application:

1) Subsidized transactions through subscriptions. You don’t charge your users for transactions. You charge them a subscription for using your service. Your users pay through methods and flows that they are already familiar with like Stripe. Transaction costs are assumed as part of your CAC. For them, the application feels and looks like any other cloud application. Users get unique advantages that cannot get anywhere else.

2) Virtual Currency. You can create a virtual currency system (emeralds, diamonds) that users can top up via Stripe. Users need this virtual currency to interact with your dapp. Once the user is running low on credits, they will be prompted to buy more virtual currency. Once again, the technical complexity is hidden from the users but they still get benefits unique benefits like true ownership of their in-game digital assets.

3) Sponsored Fund. You can create a DAO that has a pool of money. Certain users are whitelisted by the DAO and its transactions are funded by it. The DAO can add and remove privileges from people based on its governance.

Future Starts Today

Gas Station Network is available today on Rinkeby and the beta will be deployed to the main net next week.

We want your feedback. Please join us for the beta and help us by:

  • Running your own relayer. Spin up a server with the open-source code and get rewarded for every transaction you put on the blockchain. See instructions in the repo.
  • Integrating GSN into your dapp. Protect your users from the pain points we have discussed above and 10x your onboarding funnel. See our docs.
  • Collaborating and contributing to the open-source code. The code is totally open source. You can contribute and send pull requests here.

GSN transforms demanding technical projects into consumer applications ready for mass adoption. Applications that deliver on the promises of this groundbreaking technology while abstracting the technical complexities from the end-users.

As we have seen, bundling all technical costs inside CAC gives you the freedom to test, find and unlock new disruptive models that only blockchain technology can support.

A new age is rising! Join us.

GSN Website

Github Repo

Open Zeppelin Docs


A post was split to a new topic: GSN Hands on experience