App Store · Daily · 07:00 your time
Your App Store email, minus the script.
Downloads, impressions, product page views and in-app purchases, each vs the previous day, last week and last month, plus ratings. Computed from Apple's APIs, never generated.
- From
- Morning Pulse <noreply@mail.morningpulse.app>
- Subject
- Morning Pulse — Fri, Oct 16
Morning Pulse App
Friday, October 16, 2026
Hello Alex,
Here are your numbers:
Fieldnote
iOS
| KPI | Period | Value |
|---|---|---|
| Impressions impressions |
Oct 14 | 18,940 |
| ▲ +5.4% vs. previous day▲ +8.1% vs. last week▲ +12.0% vs. last month | ||
| Product Page Views productPageViews |
Oct 14 | 2,105 |
| ▲ +2.2% vs. previous day▼ -4.1% vs. last week▲ +6.3% vs. last month | ||
| Total Downloads totalDownloads |
Oct 14 | 412 |
| ▲ +7.3% vs. previous day▲ +3.0% vs. last week▲ +15.4% vs. last month | ||
| First-Time Downloads firstTimeDownloads |
Oct 14 | 318 |
| ▲ +6.0% vs. previous day▲ +2.6% vs. last week▲ +13.9% vs. last month | ||
| In-App Purchases inAppPurchases |
Oct 14 | 57 |
| ▲ +11.8% vs. previous day0% vs. last week▲ +9.6% vs. last month | ||
01 — Build vs run
Signing the JWT is the easy part. Here's the rest.
| Problem | Your script | Morning Pulse |
|---|---|---|
| Auth | Your scriptEvery call needs an ES256 JWT signed with your .p8 key, and Apple caps its life at 20 minutes. | Morning PulseA fresh token, signed for each fetch. |
| Report requests | Your scriptAnalytics aren't one GET: POST a report request, wait for Apple to generate it, then walk reports, instances and segments. | Morning PulseOne ongoing report request per app, created once, then walked report → instance → segment. |
| Late data | Your scriptAsk for yesterday and the instance isn't there yet, so a naive loop reads zero. | Morning PulseReports the day before yesterday, the latest day Apple has finalized, dated with the day it covers. |
| Files | Your scriptSegments arrive as gzip-compressed TSV, laid out differently per report. | Morning PulseDecompressed and parsed in code, rows filtered by event or download type for each metric. |
| Numbers | Your scriptAn LLM summarizing the JSON can round, swap or invent a percentage. | Morning PulseArithmetic in code. No model writes a number. |
02 — What's inside
Eleven App Store metrics. Plus your ratings.
Quick setup starts with total downloads, first-time downloads and store impressions. For an Apple app, the email also shows your ratings: average, total, written reviews, a trend and up to three new reviews from the last 24 hours. Aggregation is how days add up when you pick a weekly or monthly KPI instead of a daily one.
| KPI | Aggregation |
|---|---|
| Impressionsimpressions | sum |
| Product Page ViewsproductPageViews | sum |
| Conversion RateconversionRate | average |
| Total DownloadstotalDownloads | sum |
| First-Time DownloadsfirstTimeDownloads | sum |
| Redownloadsredownloads | sum |
| In-App PurchasesinAppPurchases | sum |
| Installationsinstallations | sum |
| Sessionssessions | sum |
| Crashescrashes | sum |
| Customer ReviewscustomerReviews | sum (reviews per day) |
Why App Store numbers are 2 days old
- Apple finalizes App Store analytics about 2 days after the day they cover. Morning Pulse waits, so the email shows the day before yesterday.
- Each row shows the day it covers, so Tuesday's downloads never pass for yesterday's.
- With a new key, Apple can take 24 to 48 hours to generate the first reports.
03 — How it works
Set it up once. Read it every morning.
-
01
Create an API key
In App Store Connect, Users and Access › Integrations. Our guide recommends the Sales and Reports role.
-
02
Add it to Morning Pulse
Issuer ID, Key ID and the .p8 file. Morning Pulse requests Apple's analytics reports for your app.
-
03
Read it at 7:00
Apple's finalized numbers, dated with the day they cover.
An API key, used to read.
Apple's analytics start with one POST: the report request.
Reads
- Apple's analytics reports for your app
- Customer reviews and ratings
Writes
- One ongoing analytics report request per app, created once
Never
- Edits your apps, metadata, prices or builds
- Stores your .p8 key in plain text
04 — FAQ
App Store questions, answered straight.
Which App Store metrics are in the email?
The ones you pick: impressions, product page views, conversion rate, total, first-time and re-downloads, installations, in-app purchases, sessions, crashes and the daily count of customer reviews, each compared with the previous day, last week and last month. For an Apple app, the email also shows your ratings: average, total, written reviews, a trend and up to three new reviews from the last 24 hours.
Why isn't yesterday's App Store data in my email?
Apple finalizes App Store analytics about 2 days after the day they cover. Morning Pulse reports the latest finalized day, the day before yesterday, and shows the date it covers on every row.
Which API key role should I choose?
Our setup guide recommends Sales and Reports. Morning Pulse uses the key to read Apple's analytics reports and customer reviews, and to create the one ongoing analytics report request Apple needs per app. It never edits your apps, metadata or prices.
Is my .p8 key safe?
Morning Pulse stores it encrypted and decrypts it only to sign the short-lived token for each call to Apple. Apple lets you download the .p8 file once, so keep your own copy, and you can revoke the key in App Store Connect at any time.
Does Morning Pulse support Google Play too?
Yes. Sign in with Google to connect Google Play, and your email adds crash and ANR rates, ratings and reviews next to your App Store numbers. Connect Play reports for first-time installs and store listing visitors, acquisitions and conversion rate, which Google publishes 3 to 7 days late. Google Play setup guide.
How much does it cost?
Free is €0 forever: 1 app, 1 data source (App Store Connect or Google Play), 3 KPIs and the daily email, with no card. Starter is €4/month or €40/year: unlimited KPIs and all seven sources for 1 app, so App Store and Google Play together. Pro is €8/month or €80/year: unlimited apps, anomaly alert emails, weekly, monthly and quarterly emails, unlimited recipients, read-only team access and a morning brief on WhatsApp (paid Pro by card only, not the trial or Shopify billing; EU, India and Canada numbers). Your first Starter or Pro subscription starts with a 14-day trial, and checkout asks for a card. See pricing.
Same email, other sources
All seven sources →Skip the script. Read your App Store numbers tomorrow at 7:00.
Free: 3 KPIs from one source, no card.