
Create a WhaleAlert like service in 10 minutes (Crypto Alert)
WhaleAlert is a service that notifies about large crypto transactions.
In this article, we will learn how you can build a crypto alert service like WhaleAlert using Bitquery APIs within a few minutes.
Our crypto alert service will notify users whenever there is a transfer worth more than 2 million USDT.
The hardest part of building a crypto alert service is getting the relevant blockchain data. Let's say we want our alert service to "give all Bitcoin transactions with more than 1000 BTC."
To build a crypto alert service from scratch, you would need to:
-
Run a Bitcoin node
-
Get transaction data continuously and index it
-
Query that data to get the desired results
Bitquery solves the first and second steps for you. You just call our APIs to get the results, across more than 40 blockchains through one unified schema, so integrating with multiple chains is easy.
Better still, you don't need to poll at all. Bitquery's streaming API supports GraphQL subscriptions: you open a WebSocket, subscribe to a query, and every matching transfer is pushed to you the moment it lands on chain.
Prerequisite
To build a crypto alert service, you need programming knowledge and the ability to write GraphQL queries. If you don't know GraphQL, don't worry: the IDE has many example queries to get you started.
- Programming knowledge
- GraphQL
Bitquery exposes a single GraphQL endpoint, https://streaming.bitquery.io/graphql, to query more than 40 blockchains. Generate an access token from your account and send it as an Authorization: Bearer <token> header. Full setup steps are in the documentation.
Tether (USDT) alert service
Let's say we want an alert for every USDT (Tether) transfer worth more than $2 million. We write a GraphQL subscription and test it in the Bitquery IDE:
subscription {
EVM(network: eth) {
Transfers(
where: {
Transfer: {
Currency: {
SmartContract: { is: "0xdac17f958d2ee523a2206206994597c13d831ec7" }
}
Amount: { ge: "2000000" }
}
}
) {
Block {
Time
Number
}
Transfer {
Amount
AmountInUSD
Sender
Receiver
Currency {
Symbol
}
}
Transaction {
Hash
}
}
}
}
Run it in the IDE and you will see results stream in as new blocks arrive. No polling loop, no cron job.
Understanding the subscription
- The
SmartContractfilter is the USDT token contract address. To get alerts for any other token on Ethereum, pass that token's contract address instead. Amount: { ge: "2000000" }keeps only transfers of 2 million USDT or more.SenderandReceivergive you both sides of the transfer, andAmountInUSDgives you the dollar value at transfer time.
Bitquery also maintains address labels for major exchanges. When a whale moves funds into a Binance or Coinbase deposit wallet, you can match the address against these labels to say so in your alert, which is exactly what makes WhaleAlert tweets interesting.
Building the Alert Service
Getting the data was the hardest part, and the subscription does it for you. Now you can tweet these alerts or push notifications to traders.
If you plan to build a Twitter bot, find a Twitter library in your favorite programming language and post a message each time the subscription delivers a transfer. For brevity, we are not building the Twitter bot here.
If your alert service needs to process every transfer on a chain reliably at production scale, use Kafka streams instead of a WebSocket. Kafka gives you the same data as a durable, replayable feed, which is what trading desks and monitoring systems run on.
More Crypto alerts
We showed a USDT alert. The same pattern works for any chain and any condition: large BTC transactions, DEX trades above a threshold, transfers touching a specific wallet. Browse example queries and subscriptions in the documentation and adjust the filters to your use case.
Wrapping Up
Our tools help you query blockchains in the simplest manner possible. At Bitquery, we are passionate about blockchain data and enabling developers to build useful tools with it. If you have a particular use case in mind or get stuck while following the tutorial, let us know on our Telegram channel.
About Bitquery
Bitquery provides blockchain data for 40+ chains through one unified schema. Our products include:
-
GraphQL APIs and streams: query historical data or subscribe to real-time updates over WebSocket via the IDE and docs.
-
Kafka and gRPC data streams: complete, low-latency onchain data feeds for trading systems and pipelines.
-
MCP server: connect Claude, Cursor, or any MCP client to Bitquery data and query it in plain English.
-
Coinpath® MoneyFlow: a crypto investigation platform with auto-tracing, entity labels, and case management.
If you have any questions about our products, ask them on our Telegram channel. Also, subscribe to our newsletter below, we will keep you updated with the latest in the cryptocurrency world.
Subscribe to our newsletter
Subscribe and never miss any updates related to our APIs, new developments & latest news etc. Our newsletter is sent once a week on Monday.


