I'm developing a personal project to monitor token balances of all wallet addresses in my service . I can monitor token balances of several addresses by multicall. I designed my workflow of balance scanning something like this:

  • Cron-job every 24 hours to fetch all new token balances of all wallet addresses
  • If anyone requests to get balances, I will get it from redis || database -> cache in redis expire 30m and return.
  • Cron-job every 30m, to fetch all new token balances of all requested addresses recently


What problem I am facing is: the EVM RPC URL blocked me. Of course I'm using free endpoints, and I intend to upgrade to the payment plan. But does my workflow cost too many requests? I expect to serve ~ 200.000 wallet addresses, with ~ 5000 token addresses on 5 chains.

My questions

What is the best way to monitor token balances?

  • Scan every single tx, get tracing data of it and analyze by back-side code?
  • Scan by cronjob like above?
  • Use 3rd party API?

Which ways to save cost and fast return?

1 Answer 1


If I understand your query properly, you want to show balance of multiple Tokens in individual wallet address. If this is your question then as a solution you can use Ether-scan or other blockchain API's or we can do this using web3 JS or Ether JS. If it is not your query then explain more.

  • I want to show a wallet address's net worth as fast as when it logins into my service. 3rd party API can be a good solution, but because I want to save the cost and keep the balance mostly real-time (delay ~ 10ph). So I'm finding another solution to update the balance and handle it with my database.
    – CT95
    Apr 11 at 1:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.