Skip to main content

Robinhood Meme Coin Launches API

Track meme coin token launches on Robinhood with Bitquery GraphQL APIs. This guide shows how to detect newly created tokens from popular Robinhood launchpads and bots — hood.fun, LaunchHood, Virtuals, Flap.sh, Klik Finance, Bankr Bot, Ape.store, Bags.fm, and Clanker — using EVM(network: robinhood) Events and Transfers cubes.

API Key Required

To query or stream data outside the Bitquery IDE, you need an API access token.

Follow the steps here: How to generate Bitquery API token ➤

Stream the same query

For each launch query below, open the matching WebSocket IDE link to run it as a real-time GraphQL subscription over WebSocket. You can also convert a query to a stream in the IDE by changing the operation type to subscription.


How token launches are detected

Most Robinhood meme launch contracts mint tokens in a create transaction. You can detect those launches in two ways:

MethodCubePattern
EventsEVM.EventsFilter LogHeader.Address to the launch contract; for Flap.sh, also filter Log.Signature.Name: TokenCreated
TransfersEVM.TransfersMint from the zero address (0x000…000) to a receiver, with Transaction.To equal to the launch contract and a fixed launch mint Amount

Zero-address sender (0x0000000000000000000000000000000000000000) marks a mint. Pairing that with the launchpad contract as Transaction.To scopes results to that protocol’s creations.

The fixed Amount in each transfer query is the full initial token supply minted at launch1000000000 (1 billion) for most launchpads and 100000000000 (100 billion) for Clanker. Filtering on this value isolates the launch mint from ordinary transfers, so adjust it if a protocol uses a different launch supply.

Amounts are decimal-normalized

Bitquery's Transfer.Amount is already adjusted for the token's Decimals, so 1000000000 means 1 billion whole tokens — not the raw on-chain integer you'd see on a block explorer. Compare against the normalized value, not the raw one.

Flap.sh emits a decoded TokenCreated event, so it can be tracked via Events (richer, with decoded arguments) as well as transfers. The other launchpads and bots on this page are tracked via the mint-transfer pattern.

Stream launches as they happen

Launches are the case where polling is worst: a query tells you what already launched, and by the time you re-run it the opportunity has moved. The same mint-transfer filter works as a subscription, so you get each launch pushed at block time.

subscription NewRobinhoodLaunches {
EVM(network: robinhood) {
Transfers(
where: {
Transfer: { Sender: { is: "0x0000000000000000000000000000000000000000" } }
}
) {
Block {
Time
}
Transaction {
Hash
To
}
Transfer {
Receiver
Amount
Currency {
Name
Symbol
SmartContract
Decimals
}
}
}
}
}

This streams every mint on the chain. Narrow it the same way the queries below do — add Transaction: { To: { is: "<launchpad address>" } } for one launchpad, and the launch-mint Amount if you want only the initial supply mint rather than every subsequent mint.

Do not add dataset: to a subscription

Subscriptions always read the live stream. The dataset: combined tip above applies to queries reaching backwards, not to streams.

Reaching older launches

These queries default to the realtime dataset — a rolling window of recent blocks whose depth varies. Launchpads with sparse recent activity can return few or no rows. To reach further back, add dataset: combined (or archive) on the EVM root plus a time filter — e.g. EVM(network: robinhood, dataset: combined) with Block: {Time: {since_relative: {days_ago: 7}}}.


Launchpad and bot contract map

Every transfer query on this page is identical except two values: the launchpad address in Transaction.To and the launch-mint Amount. To track a different launchpad, copy any transfer query below and swap in the address (and, for Clanker, the amount) from this table.

ProtocolContract → Transaction.ToMint AmountQueries
hood.fun0x5fcc1df0dc020cf454e742e9a8ae2554c37a452c1000000000Transfers (WS)
LaunchHood0x62b33a039d289cbda50ebeb72fe4261449e61bcf1000000000Transfers (WS)
Virtuals0xd4ccbfa37e2f35611b3042e4096ad7a3459bd007any (no fixed supply)Transfers
Flap.sh0x26605f322f7ff986f381bb9a6e3f5dab0beaeb091000000000Events · TokenCreated (WS) · Transfers (WS)
Klik Finance0x16cf6788b762ee8969744586ed16fc5705140dd71000000000Transfers (WS)
Bankr Bot0xeb7c034704ef8dcd2d32324c1545f62fb4ad08621000000000Transfers (WS)
Ape.store0x6e4910ea5a04376032f6564da9a9e4e88b7a87c11000000000Transfers (WS)
Bags.fm0xe8cc4431adf8b5a847c113ef0c6af9043219cb371000000000Transfers (WS)
Clanker0xd3f2cc1731b7fd17f28798835c2e02f0a1839a94100000000000Transfers (WS)

WS = WebSocket subscription (real-time stream of the same query).


Compare launchpad activity

One query across every launchpad: count zero-address mints per launch contract over a window (Transaction.To in the contract-map list) and group by contract. tokens counts distinct minted token contracts. This matches mints of any amount — Clanker's different launch supply included — so treat it as an activity overview rather than an exact per-protocol launch count.

{
EVM(network: robinhood, dataset: combined) {
Transfers(
limit: { count: 10 }
orderBy: { descendingByField: "launches" }
where: {
Block: { Time: { since_relative: { days_ago: 7 } } }
Transfer: { Sender: { is: "0x0000000000000000000000000000000000000000" } }
Transaction: {
To: {
in: [
"0x5fcc1df0dc020cf454e742e9a8ae2554c37a452c"
"0x62b33a039d289cbda50ebeb72fe4261449e61bcf"
"0xd4ccbfa37e2f35611b3042e4096ad7a3459bd007"
"0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09"
"0x16cf6788b762ee8969744586ed16fc5705140dd7"
"0xeb7c034704ef8dcd2d32324c1545f62fb4ad0862"
"0x6e4910ea5a04376032f6564da9a9e4e88b7a87c1"
"0xe8cc4431adf8b5a847c113ef0c6af9043219cb37"
"0xd3f2cc1731b7fd17f28798835c2e02f0a1839a94"
]
}
}
}
) {
Transaction {
To
}
launches: count
tokens: uniq(of: Transfer_Currency_SmartContract)
}
}
}

Launches per day for one launchpad

Bucket a launchpad's mints into daily counts — a launch-rate series (example: Flap.sh).

{
EVM(network: robinhood, dataset: combined) {
Transfers(
limit: { count: 7 }
orderBy: { descendingByField: "Block_Time" }
where: {
Block: { Time: { since_relative: { days_ago: 7 } } }
Transfer: { Sender: { is: "0x0000000000000000000000000000000000000000" } }
Transaction: { To: { is: "0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09" } }
}
) {
Block {
Time(interval: { in: days, count: 1 })
}
launches: count
}
}
}

hood.fun

hood.fun is the premier fair-launch memecoin launchpad on the Robinhood network. Every token launches with a fixed 1 billion supply on a bonding curve, so newly created tokens can be detected as mint transfers from the zero address where Transaction.To is the hood.fun contract.

Contract generations

The current hood.fun launch contract is 0x5fcc1df0dc020cf454e742e9a8ae2554c37a452c. The previous generation, 0x6a63d96ef77ae569fcb85934cf1bd1ec7fe9b33d, still has tokens trading — swap the address in Transaction.To to query it. Older generations' launch history sits outside the realtime window, so query them with dataset: combined or archive.

hood.fun Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0x5fcc1df0dc020cf454e742e9a8ae2554c37a452c"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

LaunchHood

LaunchHood is a memecoin launchpad on the Robinhood network where every coin lists directly on Uniswap at creation, with a fixed 1 billion supply. Detect new LaunchHood tokens as mint transfers from the zero address where Transaction.To is the LaunchHood factory contract.

LaunchHood Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0x62b33a039d289cbda50ebeb72fe4261449e61bcf"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Virtuals

Virtuals Protocol launches on Robinhood can be detected as mint transfers from the zero address where Transaction.To is the Virtuals contract. Unlike the other launchpads on this page, Virtuals tokens don't use a fixed launch supply, so this query omits the Transfer.Amount filter and matches on the zero-address mint alone.

Virtuals Newly created tokens

▶️ Run in IDE

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0xd4ccbfa37e2f35611b3042e4096ad7a3459bd007"}}
Transfer: {Sender: {is: "0x0000000000000000000000000000000000000000"}}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Flap.sh

Flap.sh launches on Robinhood can be monitored via contract events and mint transfers.

All events from Flap.sh

List event signatures emitted by the Flap.sh contract to discover which logs are available for indexing.

▶️ Run in IDE

{
EVM(network: robinhood) {
Events(
limit: {count: 100}
where: {LogHeader: {Address: {is: "0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09"}}}
) {
count
Log {
Signature {
Name
}
SmartContract
}
}
}
}

Flap.sh Newly created tokens using logs (TokenCreated)

Filter Flap.sh TokenCreated events and decode argument values (token address, metadata fields, and related parameters).

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Events(
limit: {count: 10}
where: {
Log: {Signature: {Name: {is: "TokenCreated"}}}
LogHeader: {Address: {is: "0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09"}}
}
) {
Transaction {
Hash
From
To
}
Log {
Signature {
Name
}
SmartContract
}
Arguments {
Name
Value {
... on EVM_ABI_Integer_Value_Arg {
integer
}
... on EVM_ABI_String_Value_Arg {
string
}
... on EVM_ABI_Address_Value_Arg {
address
}
... on EVM_ABI_BigInt_Value_Arg {
bigInteger
}
... on EVM_ABI_Bytes_Value_Arg {
hex
}
... on EVM_ABI_Boolean_Value_Arg {
bool
}
}
}
}
}
}

Flap.sh Newly created tokens using transfer data

Track Flap.sh mints as transfers from the zero address with amount 1000000000 in transactions sent to the Flap.sh contract.

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}
Sample response

Each row is one newly launched token. Transfer.Sender is the zero address (the mint), Transfer.Receiver is the deployer/first holder, and Currency.SmartContract is the new token address.

{
"EVM": {
"Transfers": [
{
"Block": { "Number": "12873456", "Time": "2026-07-15T11:42:08Z" },
"Transaction": {
"Hash": "0x9f2c...a41b",
"From": "0x39d83c23dbf34fa574b9afbb0c0e364bdfd97099",
"To": "0x26605f322f7ff986f381bb9a6e3f5dab0beaeb09"
},
"TransactionStatus": { "Success": true },
"Transfer": {
"Amount": "1000000000",
"AmountInUSD": "0",
"Sender": "0x0000000000000000000000000000000000000000",
"Receiver": "0x39d83c23dbf34fa574b9afbb0c0e364bdfd97099",
"Currency": {
"Name": "Example Meme",
"Symbol": "MEME",
"SmartContract": "0x9077841e155faaf4e4e89470822c2187eeef7777",
"Decimals": 18,
"Fungible": true,
"Native": false,
"ProtocolName": ""
}
}
}
]
}
}

Klik Finance

Detect Klik Finance token launches on Robinhood by filtering mint transfers where Transaction.To is the Klik Finance contract.

Klik Finance Newly created tokens using transfers

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0x16cf6788b762ee8969744586ed16fc5705140dd7"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Bankr Bot

Track tokens launched via Bankr on Robinhood using mint transfers to the Bankr bot contract.

Bankr Bot Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0xeb7c034704ef8dcd2d32324c1545f62fb4ad0862"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Ape.store

Monitor Ape.store meme coin launches on Robinhood with the same mint-transfer pattern.

Ape.store Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0x6e4910ea5a04376032f6564da9a9e4e88b7a87c1"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Bags.fm

Query Bags.fm newly created tokens on Robinhood by mint amount and Bags.fm contract address.

Bags.fm Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0xe8cc4431adf8b5a847c113ef0c6af9043219cb37"}}
Transfer: {
Amount: {eq: "1000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

Clanker

Track Clanker token launches on Robinhood. Clanker mints use amount 100000000000 (different from the 1000000000 used by the other launchpads above).

Clanker Newly created tokens

▶️ Run in IDE · WebSocket stream

{
EVM(network: robinhood) {
Transfers(
orderBy: {descending: Block_Time}
limit: {count: 50}
where: {
Transaction: {To: {is: "0xd3f2cc1731b7fd17f28798835c2e02f0a1839a94"}}
Transfer: {
Amount: {eq: "100000000000"}
Sender: {is: "0x0000000000000000000000000000000000000000"}
}
}
) {
Block {
Time
Number
}
Transaction {
Hash
From
To
}
TransactionStatus {
Success
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Name
Symbol
SmartContract
Decimals
Fungible
Native
ProtocolName
}
}
}
}
}

FAQ

How do I track new Robinhood meme coin launches in real time?

Open any WebSocket link in the contract map above, or take a launch query on this page and change its operation type from a query to a subscription in the Bitquery IDE. Each new launch is then pushed to your client as it is mined.

Which launchpads and bots does this page cover?

hood.fun, LaunchHood, Virtuals, Flap.sh, Klik Finance, Bankr Bot, Ape.store, Bags.fm, and Clanker on the Robinhood network. Each has its own contract address and mint amount listed in the contract map.

How do I track a launchpad that isn't listed here?

Copy any transfer query on this page and replace the address in Transaction.To with the launchpad's contract. Keep the Transfer.Sender zero-address filter (it isolates mints) and set Transfer.Amount to that launchpad's initial mint supply.

Why do the queries filter transfers by a fixed Amount?

The Amount is the full initial token supply minted at launch (1000000000 for most launchpads, 100000000000 for Clanker). Combined with the zero-address sender, it isolates the launch mint from ordinary transfers. Transfer.Amount is already decimal-normalized, so compare against the whole-token value, not the raw on-chain integer.

How do I compare launch activity across launchpads?

Use the cross-launchpad query: filter zero-address mints where Transaction.To is in the contract-map list, group by Transaction.To, and count. Add dataset: combined and a Block.Time window for full coverage.

Should I use the Events or Transfers method?

Use Events when a launchpad emits a decoded creation event (like Flap.sh's TokenCreated) and you want the decoded arguments. Use Transfers — the mint-transfer pattern — for launchpads that don't expose a convenient event, which covers every protocol on this page.


Next steps

  • Use the WebSocket stream links above (or switch the query to subscription in the IDE) for real-time launch alerts.
  • Track a launchpad not listed here by swapping Transaction.To and Amount per the contract map.
  • Follow new tokens into markets with the Robinhood Trades API.
  • Inspect holder and wallet flows with Robinhood Transfers.