May 2026 release — 5 features across magazine, portfolio, and revenue
Apsity Monthly now renders instantly via full cache, every app shows its sync status with a manual Sync now button, the new Portfolio page compares all your apps in one sortable board, Keyword Health flags dead and overlapping trackers, and the Revenue page gains Calendar + Daily Detail tabs.
What we shipped this week.
Five features rolled out across the dashboard, magazine, portfolio, and revenue pages. Every one of them came out of running Apsity on twelve real apps and noticing what was missing or slow. This is a short tour of each, with the reason it exists and how to try it.
1. Apsity Monthly — instant, every time
Apsity Monthly is the four-page editorial magazine generated for each user once a month. Previously, every visit re-ran a full aggregation across all apps, countries, and reviews, then asked Claude to write the cover essay. That worked but took 5–30 seconds the first time and re-ran the aggregation on every refresh.
Now the entire issue — both the data and the AI copy — is cached in a single database row keyed on (user, year-month, language). A monthly pre-warm cron builds the cache for every paid user on the 1st, so by the time you open the magazine, every page is one DB read away. Cache hit renders in under 300 ms.
The magazine itself also got a sticky close button, a backdrop-blur modal that opens over whatever page you were on, and a magazine-tone loading screen with rotating status lines (“Asking the editor for a story…”, “Laying out the pages…”).
Laying out the pages…
2. Per-app sync status
Every cron-driven App Store Connect sync now writes its result back to the app row: lastSyncAt, status (success / partial / error), duration in milliseconds, and an error message if anything failed. Settings now shows a live panel per app with that status plus a Sync now button (rate-limited to once per hour per app).
The point of this feature is trust. The most common support question we'd get is “why is yesterday's revenue missing?” — almost always because of a transient ASC 5xx or an expired private key. Now those failures are visible inline, with a clear next action.
Settings
Settings
Profile, notifications, and connected services.
Sync Status
Live freshness of your App Store data
Last updated: 2 hours ago
Notch Nook
Tally Coach
Focus Forest
ASC subscriptions endpoint returned 503 — retry scheduled
Pebble Notes
ApiKeyExpired: regenerate your App Store Connect API key
Drift Timer
Next auto sync: Daily 03:00 KST
3. Portfolio Board — twelve apps, one screen
For multi-app developers, the existing dashboards force you to flip between apps in the sidebar to compare them. The new Portfolio page lays every connected app in a sortable table — revenue, downloads, Δ% vs the prior window, active subscribers, and a Growing / Stable / Declining / Inactive / New health badge. Sort by any column, click a row to drill into that app's revenue page.
Health is computed from two-window comparison: anything down 20%+ on revenue or 30%+ on downloads becomes “declining”; anything growing on either becomes “growing”. Apps under 14 days old get the “new” label so we don't mark every brand new app as inactive.
Portfolio
Portfolio
All your apps at a glance — sort, compare, drill in.
| App | Revenue ↓ | Δ% | Downloads | Δ% | Subs | Health | |
|---|---|---|---|---|---|---|---|
Notch Nook Productivity | $1284.42 | ↑18.4% | 3,420 | ↑12.1% | 412 | Growing | Open → |
Tally Coach Health & Fitness | $942.18 | ↑4.2% | 2,180 | ↑6.8% | 286 | Stable | Open → |
Focus Forest Productivity | $824.07 | ↓22.5% | 1,640 | ↓34.2% | 198 | Declining | Open → |
Pebble Notes Productivity | $412.66 | ↑2.8% | 1,240 | ↓1.4% | — | Stable | Open → |
Drift Timer Utilities | $388.10 | ↑64.2% | 920 | ↑88.4% | 142 | New | Open → |
Habit Loop Health & Fitness | $286.50 | ↑12.4% | 740 | ↑8.1% | 96 | Growing | Open → |
Slate Reader News | $124.20 | ↓8.4% | 580 | ↓12.4% | — | Stable | Open → |
Quiet Hours Productivity | $86.40 | ↓42.8% | 220 | ↓58.1% | — | Declining | Open → |
Voxel Sketch Graphics & Design | $64.20 | — | 80 | — | — | New | Open → |
Loop Lite Music | $0.00 | ↓100.0% | 12 | ↓90.0% | — | Inactive | Open → |
Trail Companion Travel | $0.00 | ↓100.0% | 4 | ↓98.0% | — | Inactive | Open → |
Lume Journal Lifestyle | $0.00 | — | 0 | — | — | Inactive | Open → |
Last sync: 2 hours ago
4. Keyword Health — find dead trackers
Every tracked keyword now records not just rank but the iTunes search result count and an explicit status: ranked / not_ranked / empty_results / api_error. The keywords page now shows a Health card with a one-line summary (“30 tracked · 18 active · 12 dead · 5 niche · 7 overlapping”) and expandable issue blocks.
The card also catches a related problem: if multiple apps in your portfolio track the same keyword, they show up in the overlapping group with a one-click untrack action. For Starter accounts where the keyword slot is scarce, this usually frees up 20–30% of capacity.
Keywords
Keywords
Daily ranking snapshots, health diagnostics, and AI optimization.
Keyword Health
Find dead, niche, and overlapping tracking — free up slots for keywords that actually rank.
32 tracked · 18 active · 6 dead · 4 niche · 1 errors · 5 overlapping
Dead (no rank in 30d) (6)
Niche (too few results) (4)
API errors (sync may be flaky) (1)
Overlapping (2+ apps tracking same keyword) (5)
focus timer · US
habit tracker · US
집중 타이머 · KR
Tracked keywords
32 keywords5. Revenue page — Calendar + Daily Detail tabs
The revenue page now has three tabs: Overview (the existing charts and summary cards), Calendar, and Detail.
Calendar is a month-grid with each day's revenue rendered as a color-coded cell, navigable by month, with a month-over-month percentage at the bottom. Useful for spotting weekend dips, launch spikes, and holiday patterns at a glance.
Detail is a sortable daily table with revenue, Δ% vs the previous day, downloads, IAP, subs, and notes (peak day, no-activity day). 365-day window paginates 30 rows at a time, with a one-click CSV export. Missing days (no sales rows in DB) are filled with zeros so the timeline stays continuous.
Both tabs pre-load their data in the background as soon as you enter the revenue page, so switching tabs is instant.
Revenue
Revenue · Notch Nook
Daily metrics, in USD (converted from $/¥/€).
Monthly Calendar
Daily revenue grid — spot weekend dips and spikes.
Daily Detail
Sortable, exportable row-by-row breakdown.
1–21 / 31
| Date ↓ | Revenue | Δ | DL | IAP | Subs | Note |
|---|---|---|---|---|---|---|
| 2026-05-12 | $218.42 | +12.4% | 64 | 12 | 38 | |
| 2026-05-11 | $194.18 | -8.4% | 58 | 8 | 32 | |
| 2026-05-10 | $212.06 | -22.8% | 60 | 14 | 40 | |
| 2026-05-09 | $274.92 | +18.2% | 78 | 18 | 46 | |
| 2026-05-08 | $232.50 | +2.4% | 68 | 16 | 42 | |
| 2026-05-07 | $226.94 | +4.8% | 64 | 14 | 38 | |
| 2026-05-06 | $216.40 | -1.2% | 62 | 12 | 36 | |
| 2026-05-05 | $219.02 | +28.4% | 62 | 12 | 38 | |
| 2026-05-04 | $170.62 | -12.4% | 48 | 10 | 30 | |
| 2026-05-03 | $194.86 | -8.8% | 56 | 10 | 32 | |
| 2026-05-02 | $213.66 | -28.4% | 60 | 12 | 36 | |
| 2026-05-01 | $298.42 | +18.4% | 84 | 22 | 52 | 🟢 best |
| 2026-04-30 | $252.04 | +8.2% | 72 | 18 | 44 | |
| 2026-04-29 | $232.92 | +4.8% | 68 | 16 | 40 | |
| 2026-04-28 | $222.30 | -10.4% | 64 | 14 | 38 | |
| 2026-04-27 | $248.16 | +12.4% | 70 | 18 | 42 | |
| 2026-04-26 | $220.74 | -18.4% | 62 | 12 | 38 | |
| 2026-04-25 | $270.42 | 0.0% | 76 | 18 | 44 | |
| 2026-04-24 | $270.16 | +2.4% | 76 | 16 | 44 | |
| 2026-04-23 | $263.84 | 0.0% | 74 | 16 | 42 | |
| 2026-04-22 | $263.84 | -100.0% | 0 | — | — | ⚠ no revenue |
How to validate
All five features above are live for every Starter and Pro account now. Open your dashboard and they should be visible immediately — Portfolio in the nav, Sync Status in Settings, Calendar / Detail tabs on Revenue, Keyword Health on the Keywords page, and the magazine launcher at the bottom-right.
If you spot anything wrong — a stale calendar number, a misleading health label, a slow page — the feedback widget at the bottom-right is the fastest channel.