Agent Skills: Offer Codes Setup Generator

Generates offer code distribution strategies and configuration guides for subscription and IAP promotions — including partner campaigns, influencer programs, and email re-engagement. Use when setting up offer codes for distribution.

UncategorizedID: rshankras/claude-code-apple-skills/offer-codes-setup

Install this agent skill to your local

pnpm dlx add-skill https://github.com/rshankras/claude-code-apple-skills/tree/HEAD/skills/generators/offer-codes-setup

Skill Files

Browse the full folder contents for offer-codes-setup.

Download Skill

Loading file tree…

skills/generators/offer-codes-setup/SKILL.md

Skill Metadata

Name
offer-codes-setup
Description
Generates offer code distribution strategies and configuration guides for subscription and IAP promotions — including partner campaigns, influencer programs, and email re-engagement. Use when setting up offer codes for distribution.

Offer Codes Setup Generator

Generate offer code distribution strategies, configuration guides, and campaign templates for promoting subscriptions and IAPs through redeemable codes.

When This Skill Activates

Use this skill when the user:

  • Asks about "offer codes" or "promo codes" for subscriptions
  • Wants to distribute free/discounted subscriptions to partners or influencers
  • Mentions "redemption codes" or "App Store codes"
  • Asks about re-engaging users via email with promotional codes
  • Wants to set up influencer or reviewer programs

How Offer Codes Work

  • Create in App Store Connect under Subscriptions > Offer Codes
  • Two types: one-time use codes and custom codes (reusable, max 25 chars)
  • Maximum 150,000 codes per app per quarter (per subscription)
  • Users redeem via: App Store, your app (using presentOfferCodeRedeemSheet()), or direct link
  • Offer applies the configured discount (free period, discounted rate, etc.)
  • Codes expire after the date you set in App Store Connect

Code Types

| Type | Description | Best For | |------|-------------|----------| | One-time use | Unique codes, each used once | Email campaigns, individual distribution | | Custom codes | Reusable keyword codes (e.g., "LAUNCH2025") | Social media, events, partnerships |

Redemption Methods

  1. App Store > Account > Redeem Gift Card or Code
  2. In your app via AppStore.presentOfferCodeRedeemSheet()
  3. Direct URL: https://apps.apple.com/redeem?ctx=offercodes&id=APPID&code=CODE

Configuration Questions

Ask user via AskUserQuestion:

  1. Distribution purpose?

    • Influencer/reviewer program (free access for promotion)
    • Partner distribution (B2B or affiliate)
    • Email re-engagement (win-back lapsed users)
    • Event/conference distribution (in-person)
    • Social media promotion (public campaign)
  2. Offer type?

    • Free subscription period (1 week, 1 month, 3 months)
    • Discounted first period
    • Extended free trial
  3. Scale?

    • Small (< 100 codes, targeted distribution)
    • Medium (100-1,000 codes, campaign-based)
    • Large (1,000+ codes, broad distribution)

Generation Process

Step 1: Design Campaign Strategy

Based on the distribution purpose, design:

  • Target audience and outreach plan
  • Code type (one-time vs. custom)
  • Offer duration and terms
  • Distribution channel and messaging
  • Tracking and measurement plan

Step 2: Generate Campaign Document

Output Format

# Offer Code Campaign: [Campaign Name]

## Campaign Overview
| Field | Value |
|-------|-------|
| Purpose | [Distribution purpose] |
| Target Audience | [Who receives codes] |
| Code Type | [One-time / Custom] |
| Offer | [Free X months / Y% off first period] |
| Total Codes | [Number] |
| Distribution Period | [Date range] |
| Code Expiration | [Date] |

## App Store Connect Setup

1. Go to App Store Connect > Subscriptions > [Group] > [Subscription]
2. Navigate to "Offer Codes" tab
3. Create new offer:
   - Offer type: [Free / Pay as you go / Pay up front]
   - Duration: [X weeks/months]
   - Pricing: [If discounted, specify tier]
4. Generate codes:
   - Type: [One-time use / Custom code]
   - Quantity: [Number]
   - Custom code name: [If custom, e.g., "LAUNCH2025"]
   - Expiration: [Date]
5. Download codes CSV (for one-time codes)

## Distribution Plan

### Channel: [Channel Name]
- **Recipients**: [Who gets codes and how many]
- **Delivery method**: [Email / DM / QR code / Link]
- **Message template**: [See below]
- **Tracking**: [How to measure redemption]

### Message Template

#### For Influencers/Reviewers
Subject: [App Name] — Complimentary Pro Access

> Hi [Name],
>
> I'd love to offer you complimentary Pro access to [App Name] — [one-line description].
>
> Your personal code: **[CODE]**
>
> Redeem: Open the App Store → Account → Redeem Gift Card or Code → Enter code
> Or direct link: [redemption URL]
>
> This gives you [offer details — e.g., 3 months free Pro].
>
> If you enjoy the app, we'd love an honest review or mention. No obligation at all.
>
> Best,
> [Your name]

#### For Email Re-engagement
Subject: We've missed you — here's [X] free on us

> Hi [Name],
>
> It's been a while since you've used [App Name], and we've been busy making it better.
>
> Here's what's new:
> - [Feature 1]
> - [Feature 2]
> - [Feature 3]
>
> We'd love for you to come back and try it. Here's a code for [offer details]:
>
> **[CODE]**
>
> [Redemption instructions or direct link]
>
> This code expires [date].
>
> Welcome back,
> [Your name / App name]

#### For Social Media (Custom Code)
> [Emoji] Special offer! Use code **[CUSTOMCODE]** in the App Store to get
> [offer details] of [App Name] completely free.
>
> Redeem: [Link]
>
> Limited time — expires [date]. [Emoji]

## In-App Redemption

### Add Code Entry to Your App

```swift
import StoreKit

struct SettingsView: View {
    var body: some View {
        Button("Redeem Offer Code") {
            Task {
                try? await AppStore.presentOfferCodeRedeemSheet()
            }
        }
    }
}

Measurement

| Metric | How to Track | |--------|-------------| | Codes distributed | Your distribution records | | Codes redeemed | App Store Connect > Offer Codes | | Redemption rate | Redeemed / Distributed | | Post-offer retention | Retained after offer period ends | | Conversion to paid | Continued subscription after offer |

Campaign Calendar

| Month | Campaign | Codes | Channel | |-------|----------|-------|---------| | [Month] | [Campaign name] | [Count] | [Channel] |


## Distribution Strategies by Purpose

### Influencer Program
- **Scale**: 10-50 codes per quarter
- **Code type**: One-time use (track individual redemption)
- **Offer**: 3-6 months free (generous for genuine feedback)
- **Follow-up**: Request honest review 2 weeks after redemption
- **Tracking**: Spreadsheet mapping code → influencer → outcome

### Partner/Affiliate
- **Scale**: 100-1,000 codes per partner
- **Code type**: Custom code per partner ("PARTNER2025")
- **Offer**: 1-3 months free
- **Terms**: Clear agreement on promotion expectations
- **Tracking**: Unique custom code per partner for attribution

### Email Re-Engagement
- **Scale**: Match churned user count
- **Code type**: One-time use (unique per user)
- **Offer**: 1 month free (low barrier to return)
- **Timing**: 30-60 days after churn
- **Tracking**: Email open → Redemption → Retention

### Event/Conference
- **Scale**: Match expected attendees
- **Code type**: Custom code ("WWDC2025")
- **Offer**: 1-3 months free
- **Distribution**: QR code on slides/booth, printed cards
- **Tracking**: Post-event redemption monitoring

## References

- Related: `generators/subscription-offers` — StoreKit 2 offer implementation
- Related: `generators/win-back-offers` — Win-back campaign strategy
- Related: `app-store/marketing-strategy` — Overall promotional strategy