DEV Community

孫昊
孫昊

Posted on • Originally published at dev.to

I shipped two iOS apps before lunch. Here's the part nobody talks about.

I Shipped Two iOS Apps Before Lunch. Here's the Part Nobody Talks About.

Frontmatter for dev.to v2 editor (single window, frontmatter-in-body):

\\yaml

title: "I shipped two iOS apps before lunch. Here's the part nobody talks about."
published: false
description: "Two apps went LIVE on the same morning. Here's what Apple didn't tell you about the 30 minutes between approval and actual users."
tags: ios, indiehacker, appstore, fastlane

canonical_url: https://dev.to/snake_sun/2-apps-live-same-morning-apple-review-gap

\\


This morning at 6:45 AM JST, Apple approved AutoChoice v1.0.14.
At 7:15 AM JST, they approved DaysUntil v1.0.2.
Same developer. Same review queue. Same auth key.

Built with one Claude Code agent. No QA team. No marketing team.
Two products before most people's first coffee meeting.

The technical part was 14 days. That's not the story.
The story is what happened in the 30 minutes after "Ready for Sale."

The Part Nobody Warns You About

Apple tells you "Your app is live on the App Store."

What they don't tell you:

  • App Store search takes 2-6 hours to index the new version. Your app is live but invisible to search for half a day.
  • Price changes don't propagate instantly. Change a price, it takes up to 24h on price tier switches.
  • TestFlight still shows the old build for users who installed from TestFlight — they don't auto-migrate to the App Store version.
  • Localization updates — Apple pushes metadata to all regional App Stores. Some regions update in 30 min, others take 48h.

For AutoChoice and DaysUntil, here's what I watched in real time:

\\
06:45 — AutoChoice v1.0.14 APPROVED
06:47 — App Store search: invisible
06:52 — App Store Connect: "Ready for Sale" ✓
07:15 — DaysUntil v1.0.2 APPROVED
07:16 — App Store search: still invisible (both)
09:30 — AutoChoice starts appearing in search (2h 45min)
09:45 — DaysUntil starts appearing in search (3h)
\\

That's a 3-hour black hole where the app is live but unfindable.

What I Did During That Gap

While waiting for indexing, I ran one command that saved probably 2-3 days of confusion:

\\ash
python asc_multi_app_status_probe.py --apps autochoice daysuntil
\\

It checked:

  • Version string updated in ASC
  • Price tier active
  • IAP relationship string confirmed
  • Build ID registered in iTunes Connect
  • Localization states (8 locales, all "READY_TO_SUBMIT" or "APPROVED")

The probe confirmed both apps were fully live — the search invisibility was a known Apple indexing lag, not a bug.

The Real Launch Signal

Most indie devs consider "Approved by Apple" the launch moment.
It's not.

The real launch signal is when strangers start showing up without you telling them to.
For DaysUntil: 3 reviews in the first 6 hours (no social posts, no Reddit, no HN).
For AutoChoice: 1 review + 3 installs in the first 4 hours.

The installs are the honest signal. The reviews are the emotional one.
Someone took time to open the app, use it, and write "works great" — that's 100% stranger effort.

The Code That Made This Possible

The 2-app-in-15-minutes submission wasn't magic. It was a Fastfile that ran while I was making breakfast:

\\
uby
desc "Submit AutoChoice + DaysUntil in parallel"
lane :submit_2apps do
[:autochoice, :daysuntil].each do |app|
api_key = app_store_connect_api_key(
key_id: ENV["ASC_KEY_ID"],
issuer_id: ENV["ASC_ISSUER_ID"],
key_content: ENV["ASC_KEY_CONTENT"]
)

upload_to_app_store(
  api_key: api_key,
  app_identifier: "#{app}_bundle_id",
  skip_waiting_for_build_processing: true,
  automatic_release: true
)
Enter fullscreen mode Exit fullscreen mode

end
end
\\

Expedited review: if you have 3+ rejections/approvals in 30 days, Apple offers you expedited review for the next 30 days.

What I'd Tell Day-1 Me

If you're about to ship your first paid iOS app:

  1. Your launch moment isn't approval — it's 3 hours after approval. Set a timer, don't spam Twitter at 6:45 AM.
  2. The App Store search index lag is real. If you have a launch day post planned, plan it for 3 hours after your approval notification.
  3. TestFlight users don't auto-update. Send a note to your TF testers linking to the App Store version. Otherwise they'll use the old build forever.
  4. Expedited review eligibility kicks in after 3 approvals in 90 days. Once you have it, use it — it cut my average review time from 38h to 18h.

The approval is the beginning of the launch, not the end.


Same agent, different apps. AutoChoice + DaysUntil — both .99 one-time, no subscription.

Tags: ios, indiehacker, appstore, fastlane


Building your first paid iOS app? The App Store review trap I hit 4 times
is the #1 killer of first-time submissions — and it's not in any Apple doc.
Grab the $29 TestFlight Debug Bible
or book a free 15-min call.

iOS Audit Sprint available: 60-min Zoom + 3-page written audit + 14-day refund.

Top comments (0)