More reliable live prices
The market data on this site (prices, charts, global stats, trending coins) comes from free public APIs (primarily CoinGecko, with Binance as a fallback for chart data). Those APIs are rate-limited per IP address, and initially every visitor’s browser was calling them directly.
That’s fine for one person browsing normally, but it has a real failure mode: anyone sharing an apparent IP address with a lot of other people (a corporate network, a mobile carrier, a VPN) can end up sharing that rate limit too, even though no single person did anything wrong.
The fix was to route those requests through a small caching layer on our own server instead. It fetches from the data provider once every 30 seconds to a few minutes depending on the data, and serves everyone else from that cache in between. The practical effect: prices are occasionally a few seconds to a couple of minutes less “live” than an instant fetch would be, which is not something a price ticker meaningfully suffers from, in exchange for the site holding up under real, uneven traffic instead of degrading for reasons entirely outside any individual visitor’s control.