Solana bounty: New User Activity
For new users, what is the most common first program that users interact with on Solana (as in what is the most popular first transaction for a new wallet)? What is the average number of transactions a "new wallet" makes in their first 24 hours? (New wallet defined when a wallet makes its first transaction). Do you think this is more or less than other chains? Note: Limit this analysis to the month of February.
Methodology: Basis structure
To find out these new users, I will create a table searching in the solana.transactions
table for addresses and when they first appear on the table using a min(time_blockstamp)
function. This will give a list of addresses and the first date in which they appear on the blockchain. I will only consider successful transactions in the query using:
succeeded = 'TRUE'
This will be the basis table on which I will base different queries to answer the questions in the bounty.
Methodology: Most common first program
I will add the program_id
to the basis table described above using an INNER JOIN
matching tx_from_address
and block_timestamp
. Here I will contemplate two cases:
block_timestamp = creation_date
for the first program usedblock_timestamp >= creation_date
for all programs used since creation
Then the total number of programs can be aggregated and the resulting most commonprogram_id
will be searched in solscan to identify it.
Methodology: Average number of transactions in first 24 h
To obtain the average transactions per user in the first 24 hours the wallet's life, I create a table for all transactions a user makes between the creation time and 24 hours later using interval + '1 DAY'
and then aggregating per user and calculating the average.
Results
What is the most common first program that users interact with on Solana?
The tables below show the 5 most common first programs and the most common program since user's first creation for new users in February 2022. The reason for these two cases is that the first case yields some inconclusive data and I wanted to check what would be the most common program to validate or refute the first results.
For comparison, a chart showing the Top 5 Solana project by number of transactions is shown. It was calculated in a different bounty.
Conclusion
What is the most common first program that users interact with on Solana?
Here, the results for the most common first program are somehow inconclusive. From the 5 most common, I find Wrapped SOL and Jupiter Aggregator v2 that make sense, but 3 other programs which I cannot identify. When making the search for the time since creation, I find that the most common program is Serum DEX, which makes sense since it is the 2 program in number of transaction for Solana Ecosystem. One could interpret that Serum DEX being more popular that Pyth Oracle within new users gives Serum some potential growth to try to overpass Pyth Oracle.
What is the average number of transactions a "new wallet" makes in their first 24 hours? Do you think this is more or less than other chains?
Given the resuls and recognizing that the address with the most transactions in the first 24h accounts for more than 50% of the total transactions, one can argue that the distribution is very skewed.
I can imagine that, having Solana much lower fees than other chains, this could incentivize new users to create transactions and having a shorter learning curve compared to other chains where fees are higher and new users could double think if a transaction should be made. These claim could be checked by making analogue queries on other chain, but due to time constriction before presenting this bounty were not possible.
Results
What is the average number of transactions a "new wallet" makes in their first 24 hours? Do you think this is more or less than other chains?
Below a table with the transactions per user for new wallets created in February is shown. It is worth noting that big difference between transactions done by the top 1 and the top 3 compared to the following wallets.
I am having lots of difficulties with my queries to calculate the average based on the table below, so I used separate queries for each parameter and calculated with a spredsheet.
- The total new users in Febraury is
- The total transactions in the first 24h is 1,59M (also calculated through SQL query)
- The average number of transactions per user is 5.82
Problem with calculating average
I experienced a lot of problems while trying to obtain the average number of transactions in the first 24 hours. I feel the use of min(block_timestamp)
as the condition to obtain the first transaction mightbe inefficient when making comples operations with the tables. Nevertheless, I was able to obtain a list of addresses and the transactions they made in the first 24 hours since creation, so I exported the data to a csv and calculated the average, median and total transactions in the first 24h like this. I know that the Flipside App limits the results table to 100.000 entries, but being the missing values all 1, the chance that these last results have a big impact in the average or median is quite low in my opinion.