Reference
Polar
Learn everything about Polar regarding payments, webhooks, orders, and more.
Products, Orders & Subscription
- Polar allows creating two types of products:
- One-time purchase products
- Recurring Products (Subscription Plans)
- Every product purchase will create an order in Polar.
- When subscription plan is changed it'll also create an order for the new plan.
SaaS Pricing CTA Pattern
Industry-Standard Call-to-Action Logic
When displaying pricing plans with multiple tiers and billing intervals, use this decision matrix:
| Current Plan → Target Plan | Tier Comparison | Interval Change | CTA Label |
|---|---|---|---|
| Same Product ID = Target ID | N/A | N/A | Manage |
| Tier 1 Monthly → Tier 1 Yearly | Same Tier | Month→Year | Upgrade |
| Tier 1 Monthly → Tier 2 Monthly | Higher Tier | Same Interval | Upgrade |
| Tier 1 Monthly → Tier 2 Yearly | Higher Tier | Month→Year | Upgrade |
| Tier 1 Yearly → Tier 1 Monthly | Same Tier | Year→Month | Downgrade |
| Tier 1 Yearly → Tier 2 Monthly | Higher Tier | Year→Month | Upgrade |
| Tier 1 Yearly → Tier 2 Yearly | Higher Tier | Same Interval | Upgrade |
| Tier 2 Monthly → Tier 1 Monthly | Lower Tier | Same Interval | Downgrade |
| Tier 2 Monthly → Tier 1 Yearly | Lower Tier | Month→Year | Downgrade |
| Tier 2 Yearly → Tier 1 Monthly | Lower Tier | Year→Month | Downgrade |
| Tier 2 Yearly → Tier 1 Yearly | Lower Tier | Same Interval | Downgrade |
| Tier 2 Yearly → Tier 2 Monthly | Same Tier | Year→Month | Downgrade |
| Tier 2 Monthly → Tier 2 Yearly | Same Tier | Month→Year | Upgrade |
Decision Rules (Priority Order)
- Exact Match: If current product ID = target product ID → "Manage"
- Tier Comparison: If different tiers → Higher tier = "Upgrade", Lower tier = "Downgrade"
- Interval Switch (Same Tier): Monthly→Yearly = "Upgrade", Yearly→Monthly = "Downgrade"
Key Principles
- Tier hierarchy takes precedence over billing interval
- Yearly billing is considered superior to monthly (longer commitment + savings)
- Even if switching from yearly to monthly on higher tier, it's still "Upgrade" (tier wins)
- Always show "Manage" button for current plan (industry standard)
- Industry leaders (Stripe, GitHub, Notion, Slack) consistently follow this pattern

