Every Pons launch, bonding-curve trade and graduation on Robinhood Chain, decoded from the chain and priced in USD.
Coverage
Aug 14, 2026→ Sep 23, 2026 · yesterday
Rows
≈27Mrows · estimate
Tokens
≈482Kdistinct · estimate
Tables
3Parquet, one prefix each
Columns
124across 3 tables
Coverage ends yesterday, UTC
Overview
Pons is the bonding-curve launchpad on Robinhood Chain, and the third busiest venue on the chain behind Uniswap v4 and v3. We decode the curve contracts and the factory directly from the chain, then filter three tables down to Pons alone, so you are not scanning chain-wide data to find it. A row in pons_token_creations is one token with its metadata and supply; a row in pons_trades is one buy or sell against a token's curve, priced in USD at block time; a row in pons_launches_graduations is one step in a token's life.
The query most buyers run first is the launch-to-graduation funnel: group TokenLaunched by deployer, join to PoolGraduated on the token address, and measure how long the gap was. TokenLaunched carries graduationThreshold, the quote amount a curve must reach, so progress is an exact figure rather than an inference. Watch the decimal strings — casting large amounts to float loses precision — and join on contract addresses rather than symbols, which repeat.
Use cases
Launch cohort analysis across 585,000 launches, by deployer or by token
Sniper detection from buys landing in a token's own launch block
Bundler detection using Call_CallPath inside a single transaction
Copycat and name-reuse detection across launches
3 tables
124 columns · free sample for each table
pons_trades
53 columns
One row per Pons bonding-curve buy or sell. Same schema as the chain-wide dex_trades table, pre-filtered to pons_v2.
datashare/robinhood/pons/trades<start_block>_<end_block>.parquet50 blocks per file
One row per Pons lifecycle event: launch, curve assignment, completion, graduation, migration. Same schema as the chain-wide events table, pre-filtered to the Pons factory.
datashare/robinhood/pons/launches_graduations<start_block>_<end_block>.parquet50 blocks per file
pons_token_creations26 columnsOne row per token created by a Pons launch, joining the creation call to the launch event, the token's ERC-20 metadata and its initial mint.
ColumnTypeDescription
Other8
ChainIdUInt64Robinhood Chain id; always 4663
TokenStringContract address of the token that was created; join on this, never on the symbol
DeployerStringWallet that launched the token and paid for it
CurveStringBonding curve contract assigned to the token
PairTokenStringQuote token the curve is denominated in
LaunchConfigIdStringLaunch configuration id from the TokenLaunched event
GraduationThresholdStringQuote amount the curve must reach to graduate, as a decimal string; the denominator for progress to graduation
InitialSupplyStringFirst mint from the zero address, decimal adjusted as a string
Block3
Block_DateDateUTC date of the block
Block_TimeDateTimeBlock timestamp, UTC
Block_NumberUInt64Block height the token was created in
Transaction3
Transaction_IndexUInt64Position of the transaction within the block
Transaction_HashStringHash of the transaction this row settled in; the join key to the other tables
Transaction_FromStringAddress that sent the launch transaction
Call3
Call_IndexUInt64Index of the creating call within the transaction
Call_GasUsedUInt64Gas consumed deploying the token contract
Call_SuccessStringWhether the deployment succeeded; the string true or false
Token7
Token_FactoryStringContract that deployed the token
Token_NameStringToken name as reported by the contract; copycat launches reuse names freely
Token_SymbolStringToken symbol as reported by the contract; repeats across tokens, so join on Token
Token_DecimalsInt64Decimals of the token
Token_ProtocolNameStringToken standard, for example erc20
Token_FungibleStringWhether the token is fungible; the string true or false
Token_HasURIStringWhether the token carries a metadata URI; true or false
InitialSupply1
InitialSupply_ReceiverStringAddress the initial supply was minted to
InitCode1
InitCode_BytesUInt64Size of the deployment bytecode
pons_launches_graduations45 columnsOne row per Pons lifecycle event: launch, curve assignment, completion, graduation, migration. Same schema as the chain-wide events table, pre-filtered to the Pons factory.
ColumnTypeDescription
Other2
ArgumentsStringDecoded event arguments as [Index, Name, Path, Type, Value]; TokenLaunched carries graduationThreshold here, PoolGraduated carries tokenAmount and pairTokenAmount
ChainIdUInt64Robinhood Chain id; always 4663
Block3
Block_DateDateUTC date of the block
Block_NumberUInt64Block height
Block_TimeDateTimeBlock timestamp, UTC
Call13
Call_CallPathArrayIndices of the parent calls; identifies buys bundled inside one transaction
Call_CallerIndexInt64Index of the calling frame; -1 at the top level
Call_CreateStringWhether the call created a contract; true or false
Call_ErrorStringRevert reason for the call; empty when it succeeded
Call_FromStringAddress that made the call
Call_GasUInt64Gas supplied to the call
Call_GasUsedUInt64Gas consumed by the call
Call_IndexUInt64Index of the call within the transaction
Call_InternalCallsUInt64Number of calls nested inside this one
Call_RevertedStringWhether this call reverted while the transaction still succeeded; true or false
Call_SelfDestructStringWhether the call self-destructed a contract; true or false
Call_ToStringAddress the call went to
Call_ValueStringNative value sent with the call, in wei as a decimal string
Call_Signature5
Call_Signature_AbiStringABI fragment for the function, as JSON
Call_Signature_NameStringDecoded function name
Call_Signature_SignatureStringFull function signature
Call_Signature_SignatureHashStringFour-byte selector, hex without a 0x prefix
Call_Signature_SignatureTypeStringHow the signature was resolved
Fee1
Fee_SenderFeeStringNetwork fee paid by the sender, in wei as a decimal string
Log11
Log_EnterIndexUInt64Call index the log was entered at
Log_ExitIndexUInt64Call index the log was exited at
Log_IndexUInt64Log index within the transaction
Log_LogAfterCallIndexUInt64Index of the call this log followed
Log_PcUInt64Program counter at which the log was emitted
Log_Signature_AbiStringABI fragment for the event, as JSON
Log_Signature_NameStringDecoded event name, for example TokenLaunched or PoolGraduated
Log_Signature_SignatureStringFull event signature
Log_Signature_SignatureHashStringEvent topic0, hex without a 0x prefix
Log_Signature_SignatureTypeStringHow the signature was resolved
Log_SmartContractStringContract that emitted the log; the token's curve for curve events, the factory for lifecycle events
LogHeader4
LogHeader_AddressStringAddress on the raw log header
LogHeader_DataStringRaw log data, hex without a 0x prefix
LogHeader_IndexUInt64Log index as reported by the node
LogHeader_RemovedStringWhether the node marked the log removed; true or false
Topics1
Topics_HashArrayLog topics, hex without a 0x prefix
Transaction4
Transaction_FromStringAddress that sent the transaction
Transaction_HashStringHash of the transaction this row settled in; the join key to the other tables
Transaction_IndexUInt64Position of the transaction within the block; with Log_Index it orders same-block activity exactly
Transaction_ToStringContract the transaction called
TransactionStatus1
TransactionStatus_SuccessStringWhether the transaction succeeded; the string true or false
Send this dataset’s full schema to an assistant and ask it anything. It reads the plain-text brief ↗ first, so the answer comes from the real column list rather than a guess.
Three Parquet tables. pons_token_creations is one row per token launched, with its name, symbol, decimals, initial supply, deployer and graduation threshold; pons_trades is one row per bonding-curve buy or sell; pons_launches_graduations is one row per lifecycle event — TokenLaunched, TokenCurveSetV2, CurveCompleted, PoolGraduated, GraduationTokensPermanentlyLocked, LaunchSwept and Migrated. 124 columns between them.
How big is it?
About 27.4 million trades across roughly 481,000 tokens, and about 585,000 launch events, as of 24 September 2026. Figures are approximate until the delivery manifest is generated; that manifest lists every file with its row count and sha256.
How far back does it go?
To the first Pons trade on 14 August 2026, the day the launchpad opened. Pons is younger than the chain it runs on, so complete history here is a matter of weeks rather than years.
Which tokens graduated, and how long did it take?
Join pons_launches_graduations to itself on the token address in Arguments, taking the TokenLaunched timestamp and the PoolGraduated timestamp. About 9,204 tokens in 585,000 have both, a rate of 1.57%, so most launches never reach the threshold.
What do I get about the token itself?
pons_token_creations carries the contract address, name, symbol, decimals, initial supply, the wallet that deployed it and the graduation threshold set at launch. Names and symbols repeat heavily on a launchpad — in one 50-block sample, two of eight tokens were both called Super Inu with the symbol SI — so join on the Token address rather than the symbol.
Can I tell which launches were sniped?
Yes. Every trade carries Block_Number, Transaction_Index, Log_Index and Call_CallPath, so buys landing in a token's own launch block, or bundled inside a single transaction, are identifiable without an RPC.
How are these produced, and how were they checked?
All three tables are decoded from Robinhood Chain and filtered: trades to Trade_Dex_ProtocolName = pons_v2, token creations to the contract-creating call for each launched token, and lifecycle events to the Pons factory 0x7ed598bcef8bd9edd8c97a195c6d13f40801ec7e. The schemas were diffed field by field against the chain-wide dex_trades and events samples, and every sample file was read back with pyarrow before publishing.
What should I watch out for?
Amounts are decimal strings, so casting to float loses precision on large uint256 values. Token symbols come from the contract and repeat across tokens, so join on the contract address. Failed and reverted transactions are kept, which is deliberate but means a naive count of launches is higher than the count of successful ones.
What is not included?
No OHLCV and no per-second candles. No pool reserve tracking after a token graduates onto Uniswap, since the chain-wide pool-event table is not populated for this chain. CurveCompleted is emitted by each token's curve rather than the factory, so it appears under the curve's address.
How do I load it?
One line in DuckDB: SELECT * FROM read_parquet('pons_trades/*.parquet') LIMIT 10. Pandas works too: pandas.read_parquet(path). All three sample files open without credentials.
How current is it, and how is it delivered?
Refreshed daily with T+1 latency, so a purchase made today includes everything to yesterday. Delivered as flat Parquet under a stable S3 layout, one prefix per table, with a JSON manifest listing every file and its sha256. Signed HTTPS links are emailed once the files are prepared.