You ship your app. Sales start showing up in App Store Connect. And then you wait. The money doesn't arrive on the first of the month like a paycheck, and it doesn't match what you saw in your sales dashboard last week. If you've ever stared at your bank account wondering where Apple's money went, the answer isn't a bug — it's Apple's fiscal calendar.
Here's how the whole thing works, and a small Swift helper to stop you from tracking it by hand.
Apple doesn't use the calendar you use
Most of us think in Gregorian months: January has 31 days, February has 28, and so on. Apple's finance team doesn't. Apple runs on a fiscal calendar built on whole weeks, which makes its quarters perfectly comparable year over year.
The structure looks like this:
- The fiscal year is 364 days — exactly 52 weeks.
- It's split into four quarters of 13 weeks each.
- Each quarter is divided into three fiscal "months" using a 5-4-4 week pattern: the first month is 5 weeks (35 days), the next two are 4 weeks each (28 days).
Because 52 × 7 is 364, not 365, Apple drifts by a day every year. To fix that, roughly every five to six years it adds an extra week to the fiscal year (the last time was 2023). That's the entire reason your "months" don't line up with the wall calendar.
The rule that actually matters: ~33 days
For getting paid, you only need to internalize one thing:
Apple pays out roughly 33 days after the end of each fiscal month.
So the revenue you earn during a fiscal month lands in your account about a month after that fiscal month closes. In practice the payout almost always falls on a Thursday, occasionally nudged by a public holiday (the early-January payout, for example, tends to slide because of New Year's).
A couple of preconditions before any money moves at all: you need a Paid Applications Agreement in effect, valid banking details in App Store Connect, and you have to clear the minimum payment threshold for each region. Below the threshold, the balance just rolls into the next period.
A tiny Swift helper for your next payout
Rather than eyeballing a spreadsheet, drop the estimated payout dates into your code and ask for the next one. Here's a minimal example using the 2026 schedule:
import Foundation
// Estimated App Store payout dates for fiscal year 2026
// (~33 days after each fiscal month closes).
let payoutDates2026 = [
"2025-12-04", "2026-01-02", "2026-01-29", "2026-03-05",
"2026-04-02", "2026-04-30", "2026-06-04", "2026-07-02",
"2026-07-30", "2026-09-03", "2026-10-01", "2026-10-29"
]
func nextPayout(from today: Date = Date()) -> Date? {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
formatter.timeZone = TimeZone(identifier: "UTC")
return payoutDates2026
.compactMap { formatter.date(from: $0) }
.first { $0 >= today }
}
if let next = nextPayout() {
let days = Calendar.current.dateComponents([.day], from: Date(), to: next).day ?? 0
print("Next App Store payout in \(days) days")
}
It's deliberately dumb — a hardcoded array beats reverse-engineering the fiscal math every January. The point is to wire your runway alerts or a Slack reminder to a known list of dates.
The 2026 payout schedule
Apple keeps the official version inside App Store Connect (sign-in required), but it only goes back a couple of years and isn't the easiest thing to glance at. If you'd rather subscribe once and forget it, this Apple fiscal calendar and payment dates for 2026 is kept current and can be added straight to Google Calendar or downloaded as a PDF.
What about Android?
Google's schedule is the boring one, in a good way: Google Play initiates payouts around the 15th of each month for the previous month's sales, on normal calendar months. If you're cross-platform, your iOS income arrives on Apple's fiscal rhythm and your Android income on a clean monthly cadence — worth keeping in separate columns when you forecast.
Top comments (0)