Front-run 3,532 times: memecoin buyers on Robinhood Chain, nearly all on FOMO
For two weeks in September, someone knew which memecoin a FOMO app user was about to buy on Robinhood Chain, a fraction of a second before the purchase landed. We traced every one of those orders on the blockchain.
- 3,532
- $181K
- 0.15 s
- 86 s
- $42K
- 40,813 USDG
01 · The orderA $900 buy with a bot in front of it
Just after noon UTC on September 24, a FOMO app user put $900 of USDC into a memecoin called JOLLY. Somebody got there first.
FOMO is a phone app for trading memecoins, built around seeing what your friends buy. Its users keep their money as USDC on Solana, so when one of them buys a coin on Robinhood Chain, the app has to route the order through Relay, a cross-chain bridge. Relay takes the USDC on Solana, and a moment later its solver fills the order: it buys the coin on Robinhood Chain with Relay's own money and sends it to the user.
This time a bot bought JOLLY two blocks before that fill landed, about a fifth of a second earlier. It spent 800 USDG, a dollar stablecoin used on Robinhood Chain. Relay's solver then paid the higher price the bot had left behind, and the user got 6.2% fewer JOLLY than Relay had quoted, about $51 worth. Two blocks later the bot sold into the pump.
That is a sandwich attack: buy just ahead of someone's order, let their buy push the price up, sell straight after. It is a common kind of MEV, the money bots make from the order in which trades land. The on-chain analyst Amir Ormu posted this bot's wallet on X and put its first day at 328 sandwiches.
Bitquery indexes every transaction on Robinhood Chain, so we checked every memecoin order Relay has filled there since late June. The bot on X turned out to be the last of three groups doing the same thing, and the other two had started 10 and 12 days earlier. Between them they got ahead of 3,532 orders, nearly all from FOMO. We measured what those users lost and who ended up with the money, and followed the timing back to where the orders most likely leaked.
02 · The routeHow a FOMO buy reaches Robinhood Chain
Robinhood Chain is Robinhood's own layer-2 on Ethereum, built with Arbitrum, and it has a busy memecoin scene of its own. A single sequencer orders transactions as they arrive, and there is no public mempool, the waiting room where bots on Ethereum watch trades before they land. And paying a higher fee does not buy a better spot.
So a bot cannot spot a normal pending trade and jump it. To get in front, it has to know about the trade before the trade exists on-chain.
A FOMO buy opens that window, because the order starts on another chain. The user deposits USDC with Relay on Solana. Relay logs the order. About 0.4 seconds later, Relay's fill lands on Robinhood Chain.
Every order also carries a slippage limit: the fewest coins the user will take before the trade fails. A bot that pushes the price up can take anything up to that limit, and many FOMO orders went out with limits of 35% to 45%. An order that can be seen early, with that much room in it, is an easy sandwich.
03 · The botsThree groups, 14 days, 3,532 orders
The wallet posted on X belonged to the last of the three groups, which we call the crew. It ran for the final 30 hours of the two weeks, added two wallets on its second morning and moved to four fresh ones for its last hour and a half.
We call the other two the early bot and the holder. The early bot started first and hit the most orders, and the holder, the patient one of the three, went after the biggest ones.
| Group | Active | Orders hit | Value of orders | Stake per trade | Gross profit |
|---|---|---|---|---|---|
| The crew 0x68a0…74d9 | Sept. 24 to 25 | 738 | $1,200,991 | $997 | $32,760 |
| The early bot 0x2da9…a463 | Sept. 12 to 25 | 2,081 | $2,867,866 | $252 | $22,560 |
| The holder 0x1c60…e398 | Sept. 14 to 24 | 776 | $2,605,173 | $200 | $6,406 |
| All three | Sept. 12 to 25 | 3,532 | $6,525,000 | $61,725 |
The crew and the early bot sold within two or three blocks of the user's buy, the classic sandwich. The holder bought ahead the same way, then waited about 24 seconds before selling into the pump.
04 · The fingerprintWhat front-running looks like on a ledger
We found the other two groups by the way they trade. For every order Relay filled since June, we asked who had bought the same coin in the few blocks just before it. A trader who simply likes the same coins shows up at random. A front-runner shows up right before, again and again.
Two blocks before a FOMO fill, the crew was buying that coin 16 times as often as it did a few blocks earlier, and its sells piled up in the blocks right after. The early bot has the same shape at a bigger scale. The holder buys early and sells later, which is how it got its name.
Busy routers and arbitrage bots trading the same coins show little or no such pile-up. They trade after a fill, once everyone can see it. The same search on Base, where FOMO also sends orders through Relay, found nothing like it.
05 · The costWhat users lost
Relay's public records show what each user was quoted, and the orders the bots left alone got almost exactly that. The crew's victims got a median 8.5% less. That gap is what the front-running cost them.
| Group | Orders checked | Got less than quoted (median) | Estimated user losses | 95% range |
|---|---|---|---|---|
| The crew 0x68a0…74d9 | 689 of 738 | 8.5% | $64,454 | $59,346 to $70,283 |
| The early bot 0x2da9…a463 | 202 of 2,081 | 3.9% | $62,749 | $35,439 to $89,460 |
| The holder 0x1c60…e398 | 207 of 776 | 1.6% | $53,814 | $28,829 to $84,934 |
| All three | $181,017 | $123,615 to $244,677 |
The crew's figure covers nearly all of its orders, while for the other two we checked random samples, which is why their ranges are wider. Together the three come to about $181,000, roughly three times what the bots grossed. Somebody else was taking a cut.
06 · The splitWhere the money went
About a third of the difference between what users lost and what the bots grossed went to a launchpad. Most of the pools the bots traded were set up by Pons, a Robinhood Chain launchpad. Pons pools take a fee on every swap through a Uniswap v4 hook, 4% on the JOLLY trade. The fee is split between a fee escrow, a buyback vault and Pons's own wallet. Every sandwich adds two swaps, so the hook collected about $42,000 from the bots' trades. On JOLLY the hook's cut was bigger than the bot's gain, and the bot ended that trade about $10 down.
The bots made more on their FOMO trades than they kept, because some of their other trades lost money. The rest of the users' loss went to fees in the other pools each order passed through and to other traders, give or take the margin in our estimate. The Pons arbitrage study shows how much of the chain's trading runs through these pools.
07 · The targetsBig orders, loose limits
They went for size. Relay filled 3.3 million memecoin orders on the chain in those two weeks, most of them tiny. The bots got ahead of about one in 40 orders of $2,000 to $5,000, and almost none of the small ones. The small orders they did touch mostly got caught in a sandwich built around a bigger one.
They also went for loose limits. Among orders for the same coins that no bot touched, about half had limits above 20%. Among the victims we checked, 85% did. Orders with limits above 20% also lost three to four times as much, on average, as orders capped at 10% or less.
| Slippage limit | Victim orders checked | Got less than quoted (median) | Average loss per order |
|---|---|---|---|
| 10% or less | 21 | 0.4% | $23 |
| 11% to 20% | 140 | 1.4% | $41 |
| 21% to 35% | 307 | 8.0% | $97 |
| 36% to 45% | 630 | 7.4% | $71 |
The victims were not a few whales. About 2,300 different wallets were hit, three quarters of them only once, and some were hit by more than one group. Nearly every order we checked came from FOMO. The rest came from other apps that also route through Relay.
| Victim wallets on Robinhood Chain | Count |
|---|---|
| Different wallets hit | 2,319 |
| Hit once | 1,763 |
| Hit 2 to 4 times | 470 |
| Hit 5 to 9 times | 76 |
| Hit 10 times or more | 10 |
| Hit by more than one group | 322 |
| Most-hit wallet | 0x6fea…0a0a: 26 times, $97,392 of orders |
| Orders checked that came from FOMO | crew 99%, early bot 96%, holder 99% |
08 · The leakWhere the tip came from
To front-run a FOMO buy, a bot has to know which coin is coming before Relay's fill lands. The chain does not tell it. The Solana deposit carries only an amount and an order number, and the buyer's wallet on Robinhood Chain almost never does anything first. The tip came from somewhere off-chain.
Timing shows roughly where. Robinhood Chain makes about 10 blocks a second, which lets us place each trade, the bots' buys and Relay's fills alike, to within about a tenth of a second. Relay logs each order about 0.4 seconds before its fill. All three groups bought after that log entry existed, in nearly every order we timed.
| Group | Bot buys, after Relay logs the order (median) | Bot bought before the log existed | Relay's fill, after the bot buys (median) | Orders timed |
|---|---|---|---|---|
| The crew 0x68a0…74d9 | 0.15 s | 3.8% | 0.20 s | 689 |
| The early bot 0x2da9…a463 | 0.24 s | 2.0% | 0.11 s | 202 |
| The holder 0x1c60…e398 | 0.30 s | 3.4% | 0.10 s | 207 |
Someone at FOMO would have known sooner, when the user asked for a quote, and could have bought earlier. The three groups almost never did: fewer than 4% of their buys came before Relay's log. So the leak most likely sits in that last 0.4 seconds, somewhere between Relay logging the order and the fill landing. Whoever read it there saw the coin, and since the bots favored loose limits, most likely the limit too.
That could be Relay's own systems, data Relay published, or the path its fill takes to the chain. We cannot tell which. Relay's public order feed today shows pending FOMO orders with no coin and no minimum. We watched it for two minutes, and every FOMO order we caught mid-flight was blank. What it showed before the bots stopped, we cannot see. Relay's logs can settle it: who read these order numbers during those two weeks, and what changed on the afternoon the bots went quiet.
09 · The money trailThree groups, three funding trails
The three groups share a method and even some victims, but as far as we can follow the money, two hops back, they do not share funding.
| Group | Where the money came from | How it reached Robinhood Chain |
|---|---|---|
| The crew | 0.531 ETH from a Binance hot wallet on Ethereum, Sept. 24 08:47 UTC | Bridged to Robinhood Chain through Relay 24 s later |
| The early bot | 5,499 USDC on Base from an exchange hot wallet, Sept. 10 | Bridged through Relay on Sept. 12 and 13 |
| The holder | BNB on BSC, Aug. 22 | Bridged through LI.FI and Relay |
The crew's hub wallet, the one that paid its bots, was brand new on Ethereum. Its first ETH came from a wallet that our address labels mark as a Binance hot wallet, part of Binance's proof of reserves. Within half a minute the hub bridged it to Robinhood Chain through Relay. Binance can tie that withdrawal to an account.
The early bot's money came from a Base wallet, funded by an exchange hot wallet that paid USDC to more than 100,000 addresses in September. The holder's funder bridged BNB in from BSC through LI.FI, another bridge service, in August. Each trail can be followed with the Bitquery MCP.
10 · The stopIt stopped, and the money is still there
The early bot sent its last transaction on the afternoon of September 25. The crew sent its last 86 seconds later. The holder had already stopped the day before. Through the early hours of September 26, no contract on Robinhood Chain took their place. The closest match made 10 early buys, where chance alone gives about 1, and no burst of sells after them.
| Group | Last transaction (UTC) |
|---|---|
| The holder 0x1c60…e398 | Sept. 24, 12:01:33 |
| The early bot 0x2da9…a463 | Sept. 25, 14:43:25 |
| The crew 0x68a0…74d9 | Sept. 25, 14:44:51 |
| Closest match since (to Sept. 26, 03:11) | 10 early buys, where chance gives about 1; no burst of sells |
FOMO orders still went out with loose limits after the stop, so whatever ended it was not a change to the app's settings. More likely, something the bots relied on was switched off.
The bots still hold 40,813 USDG, and none of it had moved by the morning of September 26. USDG is issued by Paxos, and its contract lets Paxos freeze an address, which Paxos says it does when it receives a formal legal order. That is the part of the bots' take that can still be held in place.
| Wallet | Who | USDG held |
|---|---|---|
| 0xfaba…c6ce | The crew, hub | 2,100.00 |
| 0xb49d…8c44 | The crew, round 1 wallet | 4,156.84 |
| 0xd759…cd65 | The crew, round 1 wallet | 4,423.55 |
| 0xf9ef…3a74 | The crew, profit wallet | 15,864.54 |
| 0x14cf…e9a2 | The crew, round 2 wallet | 1,466.50 |
| 0x0e56…508f | The crew, round 2 wallet | 1,510.30 |
| 0x5d10…4b67 | The crew, round 2 wallet | 715.11 |
| 0xebca…8ac7 | The crew, round 2 wallet | 2,049.99 |
| 0x2da9…a463 | The early bot, contract | 6,772.85 + 8.42 ETH |
| 0x8eee…ba16 | The holder, wallet | 1,753.51 |
| Total | 40,813.19 |
Traders do not have to wait for any of that. A tighter slippage limit caps what any bot can take, because an order that would lose more than its limit fails and gets refunded instead.
| Slippage cap | Victim orders that would have been refunded | Share of the loss it would have blocked, at least |
|---|---|---|
| 20% | 6% | 4% |
| 10% | 33% | 17% |
| 5% | 58% | 44% |
So who knew what FOMO users were about to buy? Someone who could read each order, its coin and most likely its limit, in the split second after Relay logged it. Three groups acted on that for two weeks and cost people buying memecoins on their phones about $181,000. Then two of them went quiet within a minute and a half of each other. The evidence that could name the source sits in Relay's logs.
Method: we checked every memecoin order Relay filled on Robinhood Chain from late June to September 25, using Bitquery's Robinhood Chain data. An order counts as front-run when a bot bought the same coin up to five blocks before it and still held that coin when the order filled. Each user's loss is how far their fill fell short of Relay's quote. Bot profits are the dollars and ETH each group ended up with. Holdings are as of the morning of September 26. Address labels are Bitquery's own.
| What | Address or transaction |
|---|---|
| Crew bot contract | 0x68a0…74d9 |
| Crew first wallet | 0x44c0…74dd |
| Early bot contract | 0x2da9…a463 |
| Holder contract | 0x1c60…e398 |
| Relay's settlement contract | 0xccc8…15be |
| Pons fee hook | 0xe5e7…e044 |
| JOLLY: bot buys | 0xc13a7e…34d3 |
| JOLLY: Relay's fill | 0x6c122e…ec6f |
| JOLLY: bot sells | 0xda3b41…173f |
The wallets are public
Every bot wallet, contract and funding trail named here is on a public chain. You can pull the trades, follow the USDG and check whether anything moves after we published.
This article is provided for informational and educational purposes only and reflects analysis of publicly available on-chain data and Relay's public request records as of the times stated. It does not constitute legal, financial, compliance, or investment advice.
Wallets and contracts are identified by address only. Nothing here states who controls them, and describing a wallet's trades is not an accusation against any person. User losses are estimates with the ranges shown.
References to FOMO, Relay, Pons, Paxos, Binance, LI.FI and any other party describe on-chain activity or public statements. This article does not find that any of them leaked orders or took part in the trading described; where the information came from is stated as open.
Nothing herein should be relied upon as a definitive determination of fact. Readers should conduct their own independent verification before taking any action. The authors and publisher accept no liability for any loss or damage arising from the use of this article.
Reported by Gaurav Agarwal for Bitquery Research, with AI tools; every figure was checked against the raw data.
Watch Robinhood Chain trades as they land
Bitquery serves every trade on Robinhood Chain, for any pool or token, as it lands.