Articles · GuidesUpdated October 2026

A first visit discount is your own pricing code, not an Apple introductory offer.

A first time customer discount on a service someone turns up for is a price you set in your own code and charge with your own payment method. Apple requires that, and the wording is a prohibition rather than a favour: guideline 3.1.3(e) says an app selling services consumed outside the app must use a payment method other than in-app purchase. Apple's introductory offers are a separate thing with a separate rulebook. They discount auto-renewable subscriptions, Apple decides who qualifies, and each person gets one per subscription group for life. Confusing the two is how a first month free ends up built the way that gets rejected. Every rule below comes from Apple's own documentation, read on 14 October 2026, while putting a discount field into a booking app builder.

What follows is which rule applies to which kind of first visit, who Apple says qualifies for an introductory offer, what happens to the customer who subscribed once and cancelled, and the one case where a free first class changes the answer.

Start here

The short version

Two discounts share one name, and only one of them is Apple's.

The first is a new client offer on a real world service. A free consultation, a half price first wash, ten off the first repair. It lives in your pricing code, it is charged on a card, and no store feature is involved at any point. You own the rule about who counts as new, and you own the abuse that comes with it.

The second is an introductory offer on a subscription, configured in App Store Connect. Apple sets the shapes you can choose from, shows the offer on your product page, and enforces one per subscription group per person, counting new and returning customers the same way. The two never mix, because the thing that decides which one you are allowed to use is not the discount, it is what the customer is buying.

Does a first visit discount go through in-app purchase?

No, and the reason matters more than the answer. Guideline 3.1.3(e), Goods and Services Outside of the App, says that if your app enables people to purchase physical goods or services that will be consumed outside of the app, you must use purchase methods other than in-app purchase to collect those payments, such as Apple Pay or traditional credit card entry. That is a requirement pointing away from in-app purchase, not a carve-out letting you skip it. People describe a booking fee as exempt and then build a product with a store price on it, which is the version App Review rejects.

In practice the discount is three lines of your own logic. Work out the full price of the service, decide whether this customer qualifies, subtract, and charge the result through your payment processor. There is no store product to create, no price tier to pick, and nothing to submit for review beyond the app itself. You keep the money less your processor's fees, so the discount comes off your own margin rather than off a store payout.

The hard part is the word first. Nothing in the phone tells you whether a person has been to your shop, so you need an identity key and a flag against it. A verified phone number is the usual choice: people change email addresses more often, and you are already collecting a number to send reminders. Store the flag when the discount is redeemed, check it at booking time, and leave staff a manual override, because a regular with a new number will fail your check and a brand new customer who booked from her partner's phone will pass it. Decide what happens when the discounted visit is cancelled, too. A discount burned on an appointment nobody attended is the most common complaint at the front desk.

One more thing to settle before you build the screen: whether the offer is visible to everyone or only to people who were sent it. A price that is lower for new customers has to be explained in the app, or your regulars find it and feel cheated. Showing the full price with the reduction struck through it, labelled as a new client offer, costs nothing and answers the question before anyone asks.

Apple, App Store Review Guidelines, section 3.1.3(e), read 14 October 2026

Check yours

What is the first visit, exactly?

Pick the thing you are discounting. The rail is decided by where the service happens and how many people are in it, not by the size of the discount.

How you take the money: Your own payment method, not in-app purchase

The rule that says so: Guideline 3.1.3(e), the service is consumed outside the app

Who decides who is new: You do, from your own customer records

Guideline text read on 14 October 2026. If your case sits on the line between two of these rows, ask App Review before you build the screen.

What does Apple call an introductory offer, and who qualifies?

An introductory offer is a discount on an auto-renewable subscription that Apple runs for you. App Store Connect help lists three types: free trial, pay up front, and pay as you go. You set one up per subscription product, choose the storefronts, the start and end dates, the duration and the price, and you can hold one current and one future offer per storefront. Creating one needs the Account Holder, an Admin, an App Manager or a Marketing user. Once created, an offer cannot be edited. To change it you delete it and make a new one, which is worth knowing before you type the wrong duration.

Eligibility is the part Apple keeps. Each person is only eligible to redeem one introductory offer per subscription group, and the help page says that limit covers new and returning customers alike. Apple's own example: if a customer uses a free trial and then upgrades to a subscription product in the same group that also has a free trial, they are not eligible for the second offer. Note that the limit is per group, not per product, so stacking three products in one group does not buy you three trials. Your app can ask before it shows anything. StoreKit exposes isEligibleForIntroOffer on a product's subscription info, and a static version that takes a subscription group identifier and returns the answer for the whole group.

All of this only exists once the thing you are selling is a store product, which is to say once it goes through in-app purchases. A membership that unlocks features inside your app is that kind of product. A membership that gets somebody through the door of a building is not, and selling it through a subscription product is the mistake guideline 3.1.3(e) exists to stop.

There is one smaller trial mechanism worth knowing about, because people find it and misapply it. Guideline 3.1.1 lets a non-subscription app offer a free time-based trial before a full unlock, using a non-consumable in-app purchase item at Price Tier 0 named in the form of a day trial, with the duration and the lost functionality disclosed up front. That unlocks software, not a visit to a salon, so it is no help to a service business either.

Apple, App Store Connect help, set up introductory offers, read 14 October 2026

What happens to a customer who subscribed once and cancelled?

On the store side, they have spent their introductory offer and that is permanent. The one per subscription group limit counts what they already redeemed, however long ago they cancelled, so a win-back campaign built on a second free month will simply not apply to them. Apple documents a different offer type for exactly this person. A win-back offer has a setting called Time Since Last Subscribed, a range you choose with a minimum of 1 month and a maximum of 24 months, and both ends are required. Apple also states that customers are only eligible for win-back offers for their most recently lapsed subscription product within each group.

Where it shows up depends on the operating system, which is the detail that surprises people. App Store Connect help says win-back offers are displayed automatically to eligible customers on the Manage Subscriptions page on iOS 14.3, iPadOS 14.3 and macOS 14 or later, and inside your app on the win-back offer sheet on iOS 18, iPadOS 18 and macOS 15 or later. There is also a redemption URL you can send by email. Offer codes are the third mechanism, and the one where you choose eligibility: Apple's offer codes help page defines new subscribers as customers who have never subscribed to any subscription product within the group, alongside existing subscribers and expired subscribers whose auto-renew is off and whose period has ended. Customers are limited to redeeming one code per offer.

For a real world service none of that applies, and the question becomes a business one. Someone who last came in fourteen months ago is, for marketing purposes, a new customer. Whether they get the new client price is your decision, not Apple's, and the only honest way to make it is to write the rule down before you build the field: the discount applies if there is no completed visit on this record in the last twelve months. That sentence is testable. A vague intention to be generous to returning clients is not, and it ends up as an argument at the counter.

The part you can control is timing. A lapsed customer needs to hear from you at a moment when the offer is useful, which for most service businesses means a seasonal nudge rather than a monthly one. That is what push notifications are for, with the usual caution that a price promotion is a marketing message and needs consent that an appointment reminder does not.

Is a free first class the same case as a free first appointment?

Not always, and the thing that changes the answer is where the service happens. Guideline 3.1.3(e) turns on consumption outside the app, so a class in your own studio sits in the same place as a single appointment: paid outside in-app purchase, priced by you, with no store product involved. A session delivered live through the app is governed by the guideline next door, and that one counts heads.

Guideline 3.1.3(d), Person-to-Person Services, says that if your app enables the purchase of real-time person-to-person services between two individuals, giving tutoring students, medical consultations, real estate tours and fitness training as the examples, you may use purchase methods other than in-app purchase to collect those payments. Then the sentence that catches people: one-to-few and one-to-many real-time services must use in-app purchase. So a live one to one coaching call can be charged on your own card form, and a live class of twelve cannot. If the group version of your service moves online, its payment rail moves with it, and the first class free promotion has to become an introductory offer with Apple's eligibility rules attached.

A single appointment in a physical place is the clean case, and the one an appointment calendar app is shaped around. Trouble arrives when one app carries both: in person treatments and streamed group classes, under one price list, with one discount field. Those are two payment rails in one checkout, and the code that decides which one to use should read from the service record rather than from a flag somebody set by hand.

If your case genuinely sits on the line, the cost of guessing is a rejected build and a lost week, so ask App Review in writing and keep the reply. The guidelines also tell you they are not the last word: Apple says it will reject apps for content or behaviour it believes crosses the line, and that the rules change. Read the section yourself before you commit a payment flow to it.

Apple, App Store Review Guidelines, section 3.1.3(d), read 14 October 2026

The same promise, two different mechanisms behind it

The questionYour own first visit discountAn Apple introductory offer
What it can discountA real world service, paid outside in-app purchaseAn auto-renewable subscription sold through in-app purchase
Works for a visit that happens in your shopYesNo
You set the eligibility rule yourselfYesNo
The shapes availableAnything your own pricing code can expressFree trial, pay up front, pay as you go
Second one for the same personYour call, your recordsNo, one per subscription group per person
For a customer who cancelled months agoYour call, your recordsA win-back offer, 1 to 24 months since they lapsed
Where the money landsYour own payment processorApple, then paid out to you

Where this lands if a builder generated your app

A first visit discount on a real world service is ordinary application code, which is good news for anyone generating an app rather than writing it. There is no store product to configure, no review queue for the offer itself, and nothing in App Store Connect to get wrong. What you need is a customer record with a flag on it, a pricing function that reads the flag, and a checkout that charges a card. All three are the sort of thing you can describe in a sentence and correct in an afternoon.

Newly is an AI app builder. You describe the app in plain English and it writes a real React Native and Expo project you own, with two-way GitHub sync so the code is never trapped in a tool. It uploads iOS builds to TestFlight, publishes to Google Play internal testing, and can produce a standalone Android package. It does not submit to the App Store for you, because guideline 4.2.6 requires the provider of the app's content to submit it directly, and that is you. It is $25 a month, with no free tier.

The honest limit is that no builder can decide your discount policy, and the policy is the hard part. Who counts as new, how long a lapsed customer stays lapsed, what happens when the discounted visit is a no show, and whether staff can override the check. Write those four answers down in plain sentences first. The screens that follow are then a small job, and the rule you wrote is the thing you can still explain to a customer standing at the counter a year later.

Questions people ask about first visit discounts

For a service the customer turns up for in person, you not only can, you have to. App Store Review Guideline 3.1.3(e), Goods and Services Outside of the App, says that if your app enables people to purchase physical goods or services that will be consumed outside of the app, you must use purchase methods other than in-app purchase to collect those payments, such as Apple Pay or traditional credit card entry. Read on 14 October 2026. So a first visit at twenty percent off is priced by your own code and charged by your own payment processor. It is not an exempt in-app purchase. In-app purchase is the forbidden option for it.

Write the rule, then build the field

One sentence about who qualifies, one about how long it lasts, and one about what happens when the visit is missed. With those three written, the discount is a flag on a customer record and a line in your pricing code.

Start building