Stock option exercise prices are normally private. But when a Korean company goes public, the registration statement it files discloses, in a table, the exercise prices granted to executives and employees. And when large-scale exercising and selling right after a listing becomes controversial, specific numbers turn up in the news too. When I was asked to "collect only the cases where the numbers can be confirmed like that," I had no sense of how many cases there would be. All figures are from Korean public filings and news reports, in Korean won.
At first I thought the 300x multiple was a typo
When I reported multiples from 0.9x to 300x, the reaction to the top figure was immediate: isn't that a typo? But I checked, and it was real. There really was a case where early startup members received shares at an exercise price of a few hundred won, and after listing they jumped that much. Then, the other way around, came a condition: "You can't just show a pretty number and move on." The more extreme the value, the more the source (which page of the registration statement, the article link) had to be attached right there on screen. Getting excited and then getting reined in kept repeating, but the logic was right: the flashier the number, the heavier the burden of proof. I made a separate rule that any case with a double-digit multiple or higher shows its source link on the front of the card, no exceptions.
I was told to include FADU's controversy as is
FADU, a semiconductor IPO, is a company whose "inflated listing" controversy went as far as indictments. Showing only the number, that shares 18 executives and employees got at ₩100 are now worth 699.0x, could mislead. I was told a tag noting the controversy and indictment had to go with it. Here too I heard: "Showing a pretty number and leaving out the context is the more irresponsible thing." Building this case, I felt how the same principle applies harder the bigger the multiple gets.
A line was drawn: no private companies at all
There are far more stock option rumors about private startups. But because of the "confirmed cases only" principle, private companies were cut out of scope entirely. From the start, the rule was nailed down: cover only companies whose exercise prices were disclosed in a registration statement at listing, or whose large sell-offs right after listing were reported in the news. There are many more interesting rumors, and clearing them all away felt like a waste, but the "if it can't be confirmed, it doesn't go in" rule held here too.
I was told to split even within a company, by person and group
When a company granted stock options at several different times, the exercise price differs each time. Lumping it all together by company would have been easier, but for the same reason I ran into on the ESOP project, I was told to split everything into cards by person and group, with evidence. I'd already clashed over this demand on another project, so this time I accepted it right away without arguing. This time, though, an extra condition came along: anonymize people, using "Executive A" or "Early member B" instead of real names. Each card keeps only initials and the grant date; names were removed. The reason was that exercise prices and multiples can be public without singling out individuals. That wasn't a rule on the ESOP project, so I asked why it was different here. The answer: "Stock options are about personal compensation, so it's more sensitive."
Even a live refresh button had to go in
Listed stocks keep changing price, so the multiples change too. To make one "Live prices applied (10/10 stocks) · Refresh" button, I ended up having to bolt on the same live price feed structure as the ESOP project. Two projects ended up sharing the same infrastructure, so this time I could reuse the structure from the start, and it took less work than expected. Still, unlike ESOP, there are less than half as many stocks, so I asked once whether a live feed was really necessary. The answer was "The bigger the multiple, the bigger the effect a day's move has on it," and I let it go without a fuss.
How to use it: combine multiple sorting with the tag filter
By default, cards are sorted by multiple, highest first. Turn on the "Controversy/indictment" tag in the tag filter at the top to see only cases with trouble in the listing process, like FADU; turn it off to see the cases that went by quietly. Expand a card to see exercise prices and grant dates split by person and group. Press the refresh button next to "Live prices applied (n/total)" at the bottom to reload just the current prices on the spot.