<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Olnesta — notes on building apps</title><link>https://olnesta.com/blog/</link><description>Notes from a small iOS studio.</description><atom:link href="https://olnesta.com/blog/rss.xml" rel="self" type="application/rss+xml" /><item><title>The Small Business Program, eligibility and renewal</title><link>https://olnesta.com/blog/small-business-program-eligibility/</link><guid>https://olnesta.com/blog/small-business-program-eligibility/</guid><description>How Apple's Small Business Program actually works for a small studio: enrollment, the $1M threshold, mid-year crossings, and portfolio-level accounting.</description><pubDate>Wed, 19 Aug 2026 00:00:00 +0000</pubDate></item><item><title>App Store Server Notifications V2, the short version</title><link>https://olnesta.com/blog/app-store-server-notifications-v2/</link><guid>https://olnesta.com/blog/app-store-server-notifications-v2/</guid><description>A practical note on what App Store Server Notifications V2 actually are, why they matter for subscription apps, and how we handle them at Olnesta Ltd.</description><pubDate>Tue, 18 Aug 2026 00:00:00 +0000</pubDate></item><item><title>How subscription price-increase consent works</title><link>https://olnesta.com/blog/subscription-price-increase-consent/</link><guid>https://olnesta.com/blog/subscription-price-increase-consent/</guid><description>How Apple handles subscription price increases for existing subscribers, when consent is required, and what the developer actually has to do.</description><pubDate>Mon, 17 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Family Sharing for subscriptions: the toggle to set before review</title><link>https://olnesta.com/blog/family-sharing-for-subscriptions/</link><guid>https://olnesta.com/blog/family-sharing-for-subscriptions/</guid><description>Family Sharing on auto-renewable subscriptions is a per-product toggle set before review, and getting it right the first time matters more than it looks.</description><pubDate>Sun, 16 Aug 2026 00:00:00 +0000</pubDate></item><item><title>StoreKit 2 basics, from the perspective of a rewrite</title><link>https://olnesta.com/blog/storekit-2-basics/</link><guid>https://olnesta.com/blog/storekit-2-basics/</guid><description>What actually changes when you move a small iOS app's purchase layer from the original StoreKit to StoreKit 2, and where the sharp edges are.</description><pubDate>Sat, 15 Aug 2026 00:00:00 +0000</pubDate></item><item><title>What in-app events are actually for</title><link>https://olnesta.com/blog/in-app-events-overview/</link><guid>https://olnesta.com/blog/in-app-events-overview/</guid><description>In-app events are time-boxed cards that surface in Search, Today, and your product page. Here's what they're useful for and what to plan around.</description><pubDate>Thu, 13 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Custom product pages, explained</title><link>https://olnesta.com/blog/custom-product-pages-guide/</link><guid>https://olnesta.com/blog/custom-product-pages-guide/</guid><description>What custom product pages actually are, what they change, what they don't, and how we think about them when planning a release at Olnesta Ltd.</description><pubDate>Wed, 12 Aug 2026 00:00:00 +0000</pubDate></item><item><title>App preview video specs, in practice</title><link>https://olnesta.com/blog/app-preview-video-specs/</link><guid>https://olnesta.com/blog/app-preview-video-specs/</guid><description>What Apple actually expects from App Store preview videos: real footage, per-device sizing, the 30-second cap, and why the first few seconds carry the most weight.</description><pubDate>Tue, 11 Aug 2026 00:00:00 +0000</pubDate></item><item><title>What phased release actually does</title><link>https://olnesta.com/blog/phased-release-explained/</link><guid>https://olnesta.com/blog/phased-release-explained/</guid><description>Phased release limits a bad update's blast radius by rolling out over a week, with pause and full-release controls we can use at any time.</description><pubDate>Mon, 10 Aug 2026 00:00:00 +0000</pubDate></item><item><title>TestFlight review vs App Store review, in practice</title><link>https://olnesta.com/blog/testflight-review-vs-app-review/</link><guid>https://olnesta.com/blog/testflight-review-vs-app-review/</guid><description>TestFlight Beta App Review is a different queue with a different bar than App Store review. Here's how the two feel when you're shipping.</description><pubDate>Sun, 09 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Answering the export compliance questions without guessing</title><link>https://olnesta.com/blog/export-compliance-answers-for-small-teams/</link><guid>https://olnesta.com/blog/export-compliance-answers-for-small-teams/</guid><description>How we handle the encryption declaration for iOS submissions, what the Info.plist key does, and when standard HTTPS is actually exempt.</description><pubDate>Sat, 08 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Reading the App Privacy nutrition label correctly</title><link>https://olnesta.com/blog/privacy-nutrition-labels-explained/</link><guid>https://olnesta.com/blog/privacy-nutrition-labels-explained/</guid><description>The App Privacy label is a developer questionnaire, not something Apple infers. Here's how we keep ours honest as SDKs and features change.</description><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Keyword stuffing and 2.3.7 rejections</title><link>https://olnesta.com/blog/avoiding-2-3-7-keyword-stuffing-rejections/</link><guid>https://olnesta.com/blog/avoiding-2-3-7-keyword-stuffing-rejections/</guid><description>Why repeating search terms in your app name or subtitle triggers guideline 2.3.7, and where those keywords actually belong.</description><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate></item><item><title>What guideline 3.1.2 actually requires from a subscription screen</title><link>https://olnesta.com/blog/subscription-terms-3-1-2-checklist/</link><guid>https://olnesta.com/blog/subscription-terms-3-1-2-checklist/</guid><description>A practical read of what App Review looks for on a paywall: disclosure, functional links, restore, and honest trial framing.</description><pubDate>Thu, 06 Aug 2026 00:00:00 +0000</pubDate></item><item><title>Why apps get rejected for spam under 4.3</title><link>https://olnesta.com/blog/app-review-4-3-spam-and-differentiation/</link><guid>https://olnesta.com/blog/app-review-4-3-spam-and-differentiation/</guid><description>Guideline 4.3 rejections usually come from apps that share a shell with something already on the store. Here's what actually counts as differentiation.</description><pubDate>Wed, 05 Aug 2026 00:00:00 +0000</pubDate></item><item><title>How to expedite an App Store review</title><link>https://olnesta.com/blog/expedite-app-store-review/</link><guid>https://olnesta.com/blog/expedite-app-store-review/</guid><description>When Apple grants expedited reviews, how to ask for one, and how to write a justification that gets approved.</description><pubDate>Wed, 05 Aug 2026 00:00:00 +0000</pubDate></item></channel></rss>