How CoinHaus Started — From Crypto Chaos to a Single Screen
The 2021 Crypto Boom
2021 was the year cryptocurrency went mainstream. Bitcoin hit all-time highs. Altcoins were multiplying. Everyone around me was talking about which coin to buy next.
I got in too. Installed Upbit, installed Bithumb, started picking up coins one by one. The market was moving fast, and I was trying to keep up.
That's when the friction became obvious.
Why Are the Prices Different on Every Exchange?
The first thing that confused me: the same Bitcoin had a different price on Upbit than on Bithumb, and a different one again on Binance.
I learned this was called the "Kimchi Premium" — a well-known phenomenon where Korean crypto prices trade higher than global prices. Understanding why it exists is interesting. Checking it constantly across three different apps is annoying.
There was no single app that showed all three prices on the same screen. You'd flip between apps, the price would move, and you'd lose track of which number was accurate. I kept missing the right moment to buy or sell because I was toggling between apps.
"What if one screen showed all the exchange prices together?"
That question started CoinHaus.
One More Layer — Community
Price comparison alone wasn't the whole picture. Crypto investing is also an information game.
Which coin is about to move? What's the overall market sentiment? What are the big holders doing? To get this kind of signal, investors jump between KakaoTalk open chats, Telegram groups, and various forums. The information lives everywhere but the prices.
The idea expanded naturally: price comparison + community in one app. Investors could check the market and share opinions without context-switching. A simple but genuinely useful combination.
Building It
The biggest early challenge: how to pull real-time price data from multiple exchanges reliably.
Each exchange has a public API, but they use different protocols, different message formats, and different update intervals. Upbit uses WebSocket with binary messages, Bithumb uses REST, Binance embeds the stream name in the URL.
The core of early development was ingesting all three simultaneously, normalizing the data into a common format, and keeping the UI updated without lag. That took more time than I expected — and taught me a lot about real-time data handling.
The next post covers that WebSocket implementation in detail.