What The App Does
Codex IPO is a personal IPO watchlist. Search for a company and the app queries Finnhub's
IPO calendar and your chosen AI provider — Claude or OpenAI — at the same time, then shows
you what each found so you can pick the right entry. From then on it keeps that company
current: confirmed listing dates, expected windows, exchange and pricing as they are
published. Notifications count down to each listing date.
Before You Start
Codex IPO has no backend of its own, so it uses your API keys rather than ours. That keeps
your watchlist on your device and puts you in control of what the app costs to run.
Finnhub key required
The calendar can't be searched without one. A free Finnhub account covers US markets; Asian and European exchanges need a paid Finnhub tier.
AI key optional
Adds what the calendar does not carry — private companies, rumoured listings, and exchanges outside your Finnhub tier. Both searches and refreshes use it once configured.
Where keys are stored
In the iOS Keychain on iPhone, and in AES-256-GCM encrypted storage backed by the Android Keystore. Each key is sent only to the service it belongs to.
What it costs
Finnhub's free tier is free. AI calls are billed by Anthropic or OpenAI at their rates — picking a smaller model keeps that negligible.
Finnhub Setup
You bring your own key. It stays on your device, and calls go straight from the app to
Finnhub.
1
Open Settings in the app
Launch Codex IPO and tap the gear icon. The Finnhub API key field is at the top of the screen.
2
Copy your Finnhub key
Go to finnhub.io/dashboard in your browser, sign in, and copy the API key shown on your dashboard.
finnhub.io/dashboard → API Key
3
Paste the key and save
Paste it into the Finnhub API Key field and save. Use Test to confirm the key works before you rely on it.
4
Detect your coverage
Tap Detect and the app reports which tier your key has — US only, US + Asia, or US + Asia + EU — so an exchange you can't reach is obvious rather than silently returning nothing.
AI Search Setup
Optional, and worth adding for anything the calendar does not carry — private companies,
rumoured listings, and exchanges outside your Finnhub tier. Add a Claude or OpenAI key,
refresh the models available to that account, and choose the balance of speed, cost and
capability you prefer. Searches and refreshes both consult the selected provider.
1
Choose a provider
In Settings, choose Claude or OpenAI as the provider. You can save a key for either or both; only the selected provider is used for AI-assisted searches and updates.
2
Create the key
For Claude, open console.anthropic.com/settings/keys. For OpenAI, open platform.openai.com/api-keys. Create a key, name it something you'll recognise, and copy it — neither console shows it again. An OpenAI key must be All, or a Restricted key with List models: Read and Responses: Write.
Console → API keys → Create key
3
Paste it in and test
Paste the key into the matching field in Settings, then use Test Anthropic or Test OpenAI. The test checks that the account can list models and make a small request; if it fails, the app shows the provider's error code and description.
4
Refresh and pick a model
Use Refresh Claude models or Refresh OpenAI models to load the models your account can use. The controls load independently, so an issue with one provider does not block the other. Smaller models are usually faster and cheaper; move up only if results are thin.
Use the App
Your watchlist is the main screen. Add companies, refresh them, and decide how far ahead you
want warning.
1
Add a company
Tap + and search by company name or ticker.
2
Pick the exact match
Each result is tagged with where it came from — Finnhub, Claude or OpenAI — along with its ticker, exchange and status. Choose the right entry rather than the first one. This matters where several entities share a name, and picking here is what the app tracks from then on. An entry already on your watchlist is shown with a tick instead of a plus.
3
Refresh the watchlist
The refresh button re-checks every company in one pass, updating dates, pricing and status together.
On Android the same pass also runs by itself about once a day while the device is online, so a listing date can move without you opening the app. That refresh consults your AI provider like any other, so it counts towards what the app costs to run. iPhone and iPad refresh only when you ask.
4
Read the status
Every company carries one of five states:
- No IPO news — nothing on the calendar yet.
- Rumoured — expected, with a fuzzy window such as Q4 2026.
- Filed — date TBD — filed with the exchange, date not confirmed.
- Date confirmed — a hard listing date.
- Now trading — already listed.
Expanding a company also shows Last updated — the date its details were last refreshed — so you can tell current information from something that has been sitting untouched. The same date appears in the full details view.
5
Set up notifications
Settings lets you choose how far ahead the countdown starts — anywhere from 3 to 30 days — and the hour it arrives, on both iPhone/iPad and Android. Alerts are scheduled locally and nothing about them leaves the device.
6
Free tier and Lifetime Pro
The free tier tracks two active pre-IPO companies. Companies that have already listed do not count against it, so a watchlist of past listings stays free. Lifetime Pro is a single purchase that removes the limit — no subscription, and every other feature is in both tiers. Restore Purchase in Settings brings it back on a new device signed in to the same Apple Account or Google Account.
Troubleshooting
No results for my search
Usually a missing or mistyped Finnhub key. Open Settings, confirm the key is there and press Test. Check your connection too.
A company I know is listing shows nothing
Check your Finnhub tier with Detect — a free key sees US exchanges only, so a Hong Kong or European listing will look empty. Either upgrade the Finnhub plan or configure an AI provider, which is not limited to the calendar.
The AI search isn't finding anything
Confirm the right provider is selected and its key tests clean. Beyond that, the search only surfaces what has actually been reported — for a company that hasn't publicly signalled an IPO there is nothing to find.
The wrong company is on my watchlist
Delete it and add it again, taking care at the pick-the-match step.
Notifications are not arriving
Check the app has notification permission, and that the company actually has a confirmed date — rumoured windows don't trigger a countdown.
iOS: Settings → Codex IPO → Notifications · Android: Settings → Apps → Codex IPO → Notifications
Will my keys sync to another device?
No. They are held in that device's secure store only, so each device you use needs its key entered once.
I've hit the two-company limit
The free tier tracks two active pre-IPO companies. Remove one you no longer follow, or buy Lifetime Pro once to lift the limit. Companies that have already listed never count against it.
Can I stop the app sending crash reports?
Yes. Crash reporting is on by default and there is a switch in Settings to turn it off. Reports carry the stack trace and device details only — never your keys, your watchlist or your searches. The Privacy Policy sets out exactly what a report contains.