What are batch transfers, why they matter, and how they can help spur adoption.
Most of the media focusing on blockchain and cryptocurrency these days focuses on institutional players entering the space; whether it be through the upcoming launch of Bakkt or companies like Fidelity opening up digital asset management branches. An often overlooked area of development is the B2B landscape.
Basically, what tools are being created to help developers and business owners in the space.
Bakkt is an incredibly exciting development, don’t get me wrong. However when we’re thinking about blockchain mass adoption, it’s infrastructure that’s needed to help move it along. Bakkt helps bring digital assets as a new asset class to the forefront of mainstream media, infrastructure developments quietly help give the people in the industry the tools they need to bring the technology to where it needs to be for mainstream success.
Something you’re probably familiar with if you’ve dabbled in cryptocurrency is airdrops. Airdrops are like mass email blasts for tokens. Essentially, they are when a cryptocurrency distributes token by collecting Ethereum addresses from people interested in your coin — and mass sending them tokens to create a market for said coin.
It’s impossible to ensure the success of a token, but not getting it into the hands of as many people as possible is a great way to ensure it doesn’t succeed.
Distributing your token is one of the most important aspects of the token generation process.
Airdrops are technically referred to as batch transfers. Batch transfers are used to save time and eliminate errors when performing a number of functions. We use batch transfers to facilitate airdrops, distribute bounties from successful bounty campaigns, token giveaways, and even to distribute coins after an ICO or Security Token Offering.
Batch transfers are an example of a process that isn’t really sexy. They aren’t anything that will get a huge amount of attention, no one is really clamoring to find out the hottest new dApp to seamlessly transfer large amounts of tokens — except for the people in the industry. The ones actually pushing it forward.
We often discuss how user-friendliness and ease of access are going to be large hurdles for this industry to overcome if we’re going to achieve mass adoption. We’re making strides as an industry towards creating this ease of access, both for consumers and producers. Technology advances when new technologies are created to help people do their jobs easier. Think about what Facebook ads did for marketers, or how much more difficult eCommerce companies would be to manage without the advent of things like Google Analytics.
Entrepreneurs are what drive industries forward, and the infrastructure in an industry is the road they drive on. Right now the blockchain industries road needs a little work. We have our share of potholes, and the drive isn’t that smooth, but we’re working on it.
Let’s take a dive into what airdrops are, how they can be used to help your blockchain business, some of your options for running an airdrop, and a few of the unsung heroes of the industry making strides towards easy to use B2B solutions for blockchain companies.
PART 1: THE BASICS
What are Batch transfers used for?
Due to the design of Ethereum, batching transactions (outside of state channels) is more about saving time and eliminating error than saving fees on gas. A batch transaction tool is helpful for any general transaction that require sending tokens to multiple addresses.
It is most often used to conduct:
- Bounty Campaigns
- Airdrop Campaigns
*Airdrop campaigns are often used to giveaway large sums of a specific token, often towards to goal of marketing the coin and growing its’ community.
- ICO/STO Distribution
- Token Giveaways (Marketing Utility)
How do I do a Batch Transfer?
While it’s hard for the everyday user or crypto trader to know what is happening inside the development of the Ethereum protocol, dApps have been steadily moving in the right direction as far as user experience is concerned. Batch transfers especially have come a long way from the methods one had to use to conduct them in the past.
Aside from the two standard options: doing it yourself internally or exporting it to a development shop, there are also several dApps that help manage the process and ensure no tokens slip between the cracks.
It’s important to note that you don’t have to be a developer or programmer to do a batch transfer, there are solutions for the not-so-technically inclined.
Why is it important?
In order for a token to succeed it needs to have a market of buyers and sellers. Without supply and demand, it won’t go anywhere. Batch transfers are pivotal to a tokens success in this sense, if you can’t distribute your token to excited users, there’s no point in developing it in the first place. Which is why I see batch transfers and the advancement of dApps that facilitate them as an important element of the blockchain ecosystem.
Another way to think about the importance of batch transfers is in terms of the technology itself. The growing utility of the Ethereum ecosystem requires this functionality.
Why are Batch Transfers important?
The Ethereum blockchain is, without a doubt, the most active smart contract platform in existence.
- On Github the popularity can be measured: 18,728 repository results and 268,000 commits to ETHEREUM
- Several analysts have stated that ETH currently has more than 300,000 developers on its network and have been adding more than 50,000 developers on a monthly basis since May. (CCN)
- As of today there have been 116,000 ERC20 token contracts deployed on the Ethereum network. With many of these contracts featuring hundreds of millions, if not billions, of tokens there is ample need for a tool that allows users to easily send ERC20 tokens in batch or mass amounts.
- Ethereum is the foundation for a majority of cryptocurrencies. Most of these tokens are “ERC-20 tokens,” which made possible the majority of the $5.5 billion raised through token sales in 2017 and the $6.5 billion raised in just the first quarter of this year.” (CON)
- As of February first of this year, Ethereum surpassed 1 million transactions per day.
Additionally, ease of use and user experience are important if we ever want to see mass adoption. Even if you are not onboard with the use of airdrops as a marketing campaign or bounty giveaway, the ability to do transfers to multiple addresses should be accessible to the everyday user for their general transaction, whatever it may be.
If we want cryptocurrency to be used in similar fashions to cryptocurrency, we need to have simple functionalities to distribute currency. In the future, we might use batch transfers to divvy up prize money after a Poker tournament. They could even be used to distribute employee salaries seamlessly and automatically.
Companies spend valuable resources re-inventing the wheel every time one wants to do an Airdrop. Developers build scripts and throwaway programs which are not shared with the community.
Making good software that people can use is hard, and is an Art.
PART 2: HOW TO DO A BATCH TRANSFER
You have generally 3 options when it comes conducting one. Let’s look at examples of the pros and cons of each of the three options.
DIY (Manual AirDrop with a Team)
The first two options we’ll look at our DIY (Do It Yourself) options (the good ole’ days of manual batch transfers), the last is through the use of dApps.
No programming experience required.
Time-Consuming; 1000 wallets sent an ERC20 token with 20 people is going to take at minimum 16 hours (2 work days) with the team sending at a rate of 3.125 wallet transactions per hour.
Cost Prohibitive: If you’re sending a batch transfer to 1000 addresses, you can expect- 1000 addresses x 3 minutes per address = 50 hours of manual label. Assuming a minimum wage for these employees you’re looking at $750 in manual labor alone.
Error Rate and Leak: Humans are fallible and make errors. This could be due to a fat-fingered keystroke on an address, pure forgetfulness, or fatigue or other human constraints. This leads to extra cost and wasted tokens.
Market Fluctuation: The longer an AirDrop takes the more likely that the Ethereum network congestion and the frequent fluctuations in “gas prices” can inhibit this process.
PIY (program it yourself)
If you’re a developer, it might be feasible to simply run the transfer yourself.
Cheaper; If money is the only factor, if you think about the time wasted it’s not much cheaper.
Specificity; allows you to develop specific functionalities.
Risky; puts responsibility on the users and those receiving (potentially lower security), may upset receiving users if too slow or inaccurate.
Low Accessibility; not everyone is a talented programmer who understands the tech and the tokens used.
Time-consuming; Programming a functional tool is a slow process and usually needs a debugging phase to implement properly. It may not be an effective use of core developers time, which could be used to move the main platform or product forward faster.
Expensive; devs are not cheap…
Pre-built tools and dApps
dApps are a great way to mitigate some drawbacks of the other options as they do not require experience in coding and only charge a fee based on usage.
dApps vary in the features offered, cost, and ease of use but remove the need of coding or contract building skills to perform an airdrop. You don’t need coding or contract building skills to perform transfers to multiple Ethereum addresses.
In addition to saving time and cost on development, batch transfer dApps also help decrease network congestion by aggregating 100 transfer into 1 transaction.
How they work:
- Access the dApp.
- Upload address list in correct format
- dApp generate and batches up to 100 transfers in one transaction
- Some dApps require you to sign after each, others like Ethtree can automatically sign and automate any number of transactions (100 addresses each) until the task is completed.
Accessible: no coding required, typically just requires the formatting of addresses.
Low Cost: No development cost; not paying for information, other companies operating expenses.
Save time programming.
Accessible anytime, dApps never close or sleep.
On cost: the cost of a batch transaction ultimately depends how many transactions are involved, using a pre-built tool saves in development cost.
Among the ones I’ve listed here, the highest cost is 15 cents per batch transaction which can contain up to 100 addresses. For 100 addresses, you pay only 15 cents plus the eth gas fee. For 1000, you pay only $1.5 in fees. For 10,000 address, you only pay $15.
- Regardless of how long your dev team takes, it would be hard to beat such a low cost.
You will responsible for getting yourself there. Unlike full service development shops or those that specialize in a particular service, you will have to do your own due diligence for things like ICO, airdrops, and bounty campaigns.
On GAS: Not to get into too much detail about how smart contracts and gas works on Ethereum… In order of most gas efficient to least: Coded distribution at TGE, Manually done, dApps and other smart contracts that do batch transfer.
Batch Transfer dApps (that sends tokens directly to the address, as opposed to recievers having to claim them and pay for their own gas) will be Less Gas Efficient compared to coding the distribution within the token itself at TGE. Manual transfers are next gas efficient method for batch transfers because there is no extra gas required for processing the smart contract component of the batch transfer function. That being said, the function does not require much additional gas for what you get in time saved and minimization of error. dApps vary in their cost of gas depending on how many lines of code are involved but generally are relatively similar.
PART 3: COMPARING THE OPTIONS
I threw together this visual to give you a better idea of how the batch transfer options available compare to each other.
Ethtree: the newest and “standout dApp” of the available options. Instead of a webapp, they have a downloadable desktop dApp. Their user interface is clean and simple to use, especially compared to other options. I also really like that they have a detailed docs/FAQ page and the founders can be reached through their socials. From what I could tell, the DApp has a couple unique features that I thought should be standard to the others but aren’t. The first feature is their automatic sign and batch functionality which can save you valuable time and effort if you are processing a large number of addresses. Unlike the other Dapps, that require you to approve every batch of 100 or so addresses (this limit is based on the way Ethereum is designed), Ethtree will continue to batch and send transactions to all of the addresses you give it. The second function is an optional EthGasStation API monitor. You can either choose to set gas manually for all your transaction or let the program set the appropriate gas at the time of processing. This optional feature is particularly important if you are dealing with a large amount of addresses as it ensures that your transaction will go through even if there is any congestion in the network. The third feature is the ability to click on completed transactions as they populate in the dApp. I like that I can verify where the program is at in real-time by clicking on the addresses that have been completed and it takes me to Etherscan. While this feature is not extraordinary by any means, I like that a DApp inutitively does what I think it is suppose to. Lastly, I like that the program lets me know what the cost is and the gas estimate before starting and a reciept upon completion.
Token Multisender, Batch Sender, and Dapple Airdrops are all relatively the same. They feature a one-page web dApp where you type out or upload a list of addresses and amounts you want to send. Token Multisender in my opinion has the best interface of the three, but it certainly leaves me wanting more. Aside from decreasing the likelihood of human error, having great UI and thus great UE is vital to adoption. I only recommend using one of these if you are sending tokens to a small amount of addresses as you will need to sign and execute each batch for those above the 100-150 threshold.
Cansend: Cansend is like Token Multisender, Batch Sender, and Dapple Airdrops in almost every way except that it has a better UI and requires a CAN token to operate. Unless you already own CAN tokens, I feel like having a token if anything makes it less friendly.
— — — — — —
I hope this helps answer any questions you might have had about air drops, batch transfers, and how to facilitate them. If I’ve missed out on any options please comment below and let me know!