Custom plans are the most load-bearing screen in the platform. Every plan is a bundle of pricing, limits, and feature switches, and every customer's experience (what they see, what they can use, and what asks them to upgrade) is decided here.
This guide is the complete reference. It walks the plan editor tab by tab, lists every option with its default, and covers the Stripe and non-Stripe billing paths, per-customer overrides, the plan lifecycle, and the gotchas agencies hit most often.
Open a plan from Business -> Billing & Revenue -> Custom Plans. The editor has three tabs: General, Pricing & Billing, and Features & Options.
How the plan editor is organised
#The Features & Options tab is where the feature matrix lives. It is split into seven sub-tabs: General, Reviews, Campaigns, Review Tools, Social Proof, Publishing, and Integrations.
Steps and details
Above the sub-tabs sits an Advanced View switch. It reveals extra controls (Platform Mode, API Access, widget filter options, and more), and it resets to off on every page load. Several important options are simply invisible until you flick it, so if an option from this guide is missing from your screen, turn Advanced View on before assuming anything else.
The same editor appears in two places: on the plan itself (the template every subscriber inherits) and on each customer's Manage Customer page (a per-customer override layer). Anything set on the customer overrides the plan for that customer only; clearing the override re-inherits the plan value.
Saving the plan editor opens a price-recommendation dialog first. Your option changes only persist after you click Save Plan Options inside that dialog. Closing it discards them.
The three access states
#Most options are a 3-state access control rather than a simple on/off switch. Understanding the difference between Upgrade and Hidden is the key to designing a plan ladder.
Steps and details · includes a table
- Section-visibility options are 2-state instead:
Visible/Hidden. These areSettings Pages,Billing Pages,Services Page,Reviews Page,Campaigns Section, andNFC Cards - Some options are parents with nested children: hiding a parent (for example
Respond with AIorEmail Campaigns) also hides its children - Use
Upgradeon features you want to sell against, andHiddenon features that should never appear for that tier
| State | What the customer experiences |
|---|---|
Enabled | The feature is fully available and works normally. |
Upgrade | The feature is visible but locked. The customer sees it with an upgrade prompt, useful for showing what a higher tier includes. |
Hidden | The feature is removed from the customer's UI entirely, as if it does not exist. |
State · What the customer experiences
Enabled- The feature is fully available and works normally.
Upgrade- The feature is visible but locked. The customer sees it with an upgrade prompt, useful for showing what a higher tier includes.
Hidden- The feature is removed from the customer's UI entirely, as if it does not exist.
Testing plan gating (do not use your agency login)
#You cannot QA plan gating from your agency account. Tenant owners and sales agents bypass every plan gate, so when you look at a customer account through your own login, everything appears enabled regardless of the plan.
Steps and details
Always test by logging in as (or impersonating) a customer. Only then do the Upgrade locks, hidden sections, and limits actually apply.
The General tab: identity and availability
#Before the feature matrix, the General tab holds the plan's identity and how customers can reach it.
Steps and details · includes a table
| Field | What it does | Notes |
|---|---|---|
Name | The plan's name | Must be unique across your plans. |
Description | Short text shown to customers when they are choosing a plan | Sell the tier here, not internally. |
Default Plan | Auto-selected for new customers at signup | Setting a plan as default un-defaults every other plan. |
Hide Plan | Removes the plan from the customer subscription page | Existing subscribers keep it, and it stays usable in your Switch Plan modal. This is how you retire a plan. |
Plan Registration URL | A direct signup link for this plan | Always register?plan={id}. A status banner tells you whether it is ready to share: it warns when signups are off, when payment-first needs a payment link, or when you should share the Stripe payment link instead. |
Features & Options: General sub-tab
#The General sub-tab holds account-wide limits, monthly credits, and the section-visibility switches.
Steps and details · includes a table
| Option | What it controls | Default | Notes |
|---|---|---|---|
Max Locations | How many locations the customer can create | 1 | 0 = unlimited. On Stripe plans this limit also drives add-on location billing. |
Max Team Members | How many team members the customer can invite | 0 (unlimited) | 0 = unlimited. |
Monthly Email Credits | Email sending credits granted each month | 0 | Renews monthly per channel. |
Monthly SMS Credits | SMS sending credits granted each month | 0 | Renews monthly per channel. |
Monthly WhatsApp Credits | WhatsApp sending credits granted each month (WhatsApp is coming soon) | 0 | Renews monthly per channel. |
Settings Pages | Visibility of the customer's Settings group | Visible | Hiding 404s the whole Settings group, except Profile, which always stays reachable. |
Billing Pages | Visibility of the customer's Billing menu | Visible | Hiding removes the entire Billing menu plus upgrade and top-up links. UI only: Stripe subscriptions keep renewing. |
Services Page (Services Access card) | Visibility of the services you sell from Custom Products | Visible | Hiding removes the Manage -> Services menu item, the Services page, and featured services on the dashboard. Active service subscriptions keep renewing. |
Remove 'Powered By' Branding | Whether the customer can strip platform branding | Enabled | |
Platform Mode | Multi-Location vs Multi-Organization account structure | Multi-Location | Advanced View only. |
API Access | Access to the customer API and API settings | Upgrade | Advanced View only. On Upgrade the API settings page shows locked, but the API docs page 404s until the option is fully Enabled. |
Features & Options: Reviews sub-tab
#The Reviews sub-tab controls the reviews page itself, the AI reply stack, and review management tools. Respond with AI is a parent option: hiding it also hides Auto-Responding and Custom AI Prompts beneath it.
Steps and details · includes a table
Note that AI Hub and API Access are separate products with separate switches: enabling API access does not grant the AI Hub, and vice versa. The last five rows only appear with Advanced View on.
| Option | What it controls | Default | Notes |
|---|---|---|---|
Reviews Page | Visibility of the customer's Reviews page | Visible | 2-state Visible / Hidden. |
Respond with AI | AI reply generation on reviews | Enabled | Parent option: hiding it also hides its children below. |
Auto-Responding | Automatic AI replies to incoming reviews | Upgrade | Child of Respond with AI. |
Custom AI Prompts | Customer-defined prompts for AI replies | Enabled | Child of Respond with AI. |
Tag Reviews | Tagging and organising reviews | Enabled | |
AI Insights | AI-generated insight reports over reviews | Upgrade | |
Search AI | AI-powered review search | Upgrade | |
AI Hub | The AI Hub (MCP) connection | Upgrade | Sold independently of API Access: enabling one does not enable the other. |
Import Reviews | Importing reviews manually | Enabled | Advanced View only. |
Export Reviews | Exporting reviews | Enabled | Advanced View only. |
Hide Reviews from Widgets | Excluding individual reviews from widget display | Enabled | Advanced View only. |
Scheduled Reporting | Recurring emailed reports | Enabled | Advanced View only. Deliberately independent of Settings Pages visibility: hiding Settings does not switch reporting off. |
Sentiment Analysis | Sentiment analysis over reviews | Upgrade | Advanced View only. |
Features & Options: Campaigns sub-tab
#The Campaigns sub-tab gates each sending channel separately. Email Campaigns, SMS Campaigns, and WhatsApp Campaigns (coming soon) are parents: hiding a parent hides its children with it.
Steps and details · includes a table
The bring-your-own-provider children (Own Email Provider, Own SMS Provider, Own WhatsApp Provider) and WhatsApp Custom Templates (WhatsApp is coming soon) all default to Hidden, so customers use your managed sending unless you deliberately open BYOK up on the plan.
| Option | What it controls | Default | Notes |
|---|---|---|---|
Campaigns Section | Visibility of the campaigns area in nav and dashboard | Visible | Nav and dashboard only: direct URLs stay reachable. |
Email Campaigns | Email review-request campaigns | Enabled | Parent option with the three children below. |
Custom 'From' Email | Sending from the customer's own from-address | Enabled | Child of Email Campaigns. |
Own Email Provider | Bring-your-own email provider (BYOK) | Hidden | Child of Email Campaigns. |
BCC Automation | Triggering requests via BCC'd emails | Enabled | Child of Email Campaigns. |
SMS Campaigns | SMS review-request campaigns | Enabled | Parent option with the two children below. |
Own SMS Provider | Bring-your-own SMS provider | Hidden | Child of SMS Campaigns. |
MMS Requests | Sending MMS review requests | Upgrade | Child of SMS Campaigns. |
Video Review Requests | Video-based review requests | Upgrade | |
WhatsApp Campaigns | WhatsApp review-request campaigns (coming soon) | Upgrade | Parent option with the two children below. |
Own WhatsApp Provider | Bring-your-own WhatsApp provider (coming soon) | Hidden | Child of WhatsApp Campaigns. |
Custom Templates | Custom WhatsApp message templates (coming soon) | Hidden | Child of WhatsApp Campaigns. |
No Credits During Trial | Withholds monthly credits while the customer is on trial | Off | Advanced View only. |
Features & Options: Review Tools sub-tab
#The Review Tools sub-tab covers the collection assets: feedback forms, QR codes, and NFC cards. Feedback Forms is a parent: hiding it hides the form limit, AI Review Assistant, Video Testimonials, and custom domain options beneath it.
Steps and details · includes a table
| Option | What it controls | Default | Notes |
|---|---|---|---|
Feedback Forms | Branded review-collection forms | Enabled | Parent option with the four children below. |
Feedback Form Limit | Maximum number of feedback forms | 0 (unlimited) | Child of Feedback Forms. |
AI Review Assistant | AI-assisted review writing on forms | Upgrade | Child of Feedback Forms. |
Video Testimonials | Video collection on feedback forms | Upgrade | Child of Feedback Forms. Shows an inline warning to keep the Testimonials source allowed on the Integrations sub-tab. |
Custom Domain for Feedback Forms | Serving forms from the customer's own domain | Upgrade | Child of Feedback Forms. |
Review Gating / Negative Feedback | Routing unhappy customers into private feedback | Enabled | Advanced View only. |
QR Codes | QR codes that link to collection pages | Enabled | |
NFC Cards | Visibility of the NFC cards area | Hidden | The only option hidden by default. Even when visible, the customer nav additionally needs an actual NFC order before the item shows. |
Features & Options: Integrations sub-tab
#The Integrations sub-tab decides which review platforms a customer can connect. Allowed Review Sources is a logo grid with every platform selected by default. Deselect a platform to block customers on this plan from connecting it.
Steps and details · includes a table
By default a blocked platform still shows greyed out in the customer's picker; turn on Hide Unselected Sources to remove blocked platforms from the picker entirely.
| Option | What it controls | Default | Notes |
|---|---|---|---|
Allowed Review Sources | A logo grid of review platforms the customer may connect | All selected | Deselecting a platform blocks connecting it. |
Review Source Limit | Maximum number of connected review sources | 0 (unlimited) | |
Allow Custom Review Sources | Letting customers add sources not in the grid | Enabled | Advanced View only. |
Hide Unselected Sources | How blocked platforms appear in the customer's picker | Off | Advanced View only. When on, blocked platforms disappear from the picker instead of showing greyed out. |
Features & Options: Publishing sub-tab
#The Publishing sub-tab controls Google Business Profile posts: whether the customer has them, whether Autopilot runs, how much the customer does alone, and the monthly limits. The plan decides whether Publishing runs for a customer at all, for your own work in their account as well; the access level decides who operates it.
Steps and details · includes a table
- The ready-made Starter, Professional and Enterprise plans are created with Publishing set to
Upgrade,EnabledandEnabled, and Autopilot toUpgrade,UpgradeandEnabled PublishingandAutopilotcount toward the price recommendation only when set to Enabled. A plan that already includes most features is at the top of the range, so adding them may not change the suggested price
| Option | What it controls | Default | Notes |
|---|---|---|---|
Publishing | Posts, calendar, media and approvals for the customer's business profile | Upgrade | Parent option. Hidden also hides the options below. |
Autopilot | Drafts a post on a schedule; a person approves each one | Upgrade | Child of Publishing. |
What the customer can do themselves | Create and schedule posts, Approve posts only, or Nothing: the agency does everything | Create and schedule posts | Choose Nothing: the agency does everything for a done-for-you service. |
Posts per location per month | Posts each location may publish in a month | 0 (unlimited) | Posts made with Open dashboard and shared review images never count. |
AI drafts per location per month | AI drafts each location may ask for in a month | 30 | 0 = unlimited. Caps what the customer can spend on your AI key. |
The Stripe path: Pricing & Billing
#The Pricing & Billing tab is only rendered once your Stripe account is connected via Business -> Billing & Revenue -> Connect Stripe.
Steps and details
The core fields are Monthly Stripe Price ID and Yearly Stripe Price ID, each with a Create button for in-app price creation. The currency comes from your platform currency setting and is shown read-only. A plan counts as a Stripe plan if at least one price ID is set, and IDs are validated against your connected account.
Additional location pricing lives here too: Monthly Add-on Price ID and Yearly Add-on Price ID bill each location beyond the plan's Max Locations. If you configure Tiered Pricing (volume discounts by location count), it overrides the simple add-on price IDs.
- Platform commission: a 1.9% application fee applies to customer payments
- The fee is waived for lifetime-deal agencies
- The fee is silently dropped for BRL, INR, MXN, MYR, SGD, and THB currencies
A plan with no price IDs at all is treated as billed externally. See the non-Stripe path below. Setting even one price ID (monthly or yearly) makes it a Stripe plan.
Payment Links vs Checkout Sessions
#This distinction matters more than any other on the Stripe path. Payment Links, created on the plan, are for brand-new signups only. They create a new Stripe customer at checkout, so sending one to an existing customer creates a duplicate Stripe customer and breaks their billing portal.
Steps and details
Existing customers are billed from Business -> Customers -> Manage Customers using Checkout Sessions instead. A Checkout Session binds to the customer's existing Stripe customer, has a Plan to bill dropdown that defaults to their current plan, and its link expires in 24 hours.
- New signup, no Stripe history: share the plan's Payment Link
- Existing customer, upgrade or first payment: generate a Checkout Session from Manage Customers
- Both honor coupons (
allow_promotion_codes) and the plan's trial settings
If a customer ends up with two Stripe customers, their billing portal stops reflecting reality. Never send a Payment Link to someone who already exists in your Stripe account.
Trials and what happens when a subscription ends
#Trial Days sits on the Pricing tab. It is hidden for Free plans and forced to 0 when the plan is free. When a Stripe trial ends, Stripe takes over billing.
Steps and details
When a subscription fully ends, the plan's Subscription End Behavior decides what happens next: Use default, Do nothing (block access), or auto-switch the customer to a chosen free plan. Note that the auto-downgrade clears all per-customer overrides.
When a customer's trial expires or their subscription lapses, the dashboard redirects them to your subscriptions page, or to a subscription-required page when billing is hidden or Stripe is absent. Campaign sending and review syncing stop. Their public feedback forms and QR links show a branded 'page paused' notice (HTTP 402) rather than a broken 404, so end customers scanning a QR code never hit a dead page.
Trial Daysis hidden for Free plans and forced to 0 when the plan is free- Subscription End Behavior options:
Use default,Do nothing(block access), or auto-switch to a chosen free plan - Auto-downgrade to a free plan clears all per-customer overrides, so re-apply any you still want
The non-Stripe path: billing externally
#A plan with no price IDs is billed externally, and the plan list badges it Billed Externally. The Free Plan toggle marks a genuinely free plan: free-plan customers always keep access, even when paused.
Steps and details
Non-Stripe, non-free customers stay active until their platform trial date passes. You assign plans manually via the customer's Switch Plan modal.
Credits on free and non-Stripe plans renew monthly per the plan's limits, independently per channel, and respecting the No Credits During Trial option.
- Customers without your Stripe see a reduced Billing menu:
Credit usageonly, plusBuy creditswhen you sell credit products with external payment URLs - Pause is available for non-Stripe customers only, from Manage Customer, and stops access unless the plan is free
Warning: pausing wipes the customer's trial date, and resuming does not restore it. Do not pause a trialing customer you intend to resume unless you are prepared to reset their access manually.
Per-customer overrides and credit timing
#The same Features & Options editor appears on each customer's Manage Customer page. Anything you set there overrides the plan for that customer only, and overrides store only the differences from the plan, so clearing an override re-inherits the plan value.
Steps and details
Timing is the important part. Editing limits on a specific customer expires and re-grants their credits immediately. Editing the plan template does not touch existing subscribers' credits until their next monthly renewal.
- Use the plan editor for changes that should roll out to everyone at renewal
- Use the per-customer editor for changes that should take effect right now
- The per-customer editor has no price-recommendation step: it saves options directly
- Remember that an auto-downgrade at subscription end clears all per-customer overrides
- Overrides are also cleared whenever the customer changes plan. For a lasting setup such as a done-for-you Publishing level, set it on the plan itself
Plan lifecycle: create, copy, hide, delete, reorder
#Create: requires an Agency-tier EMR plan; a new plan starts from the defaults listed in the tables above
Steps and details
- Copy: duplicates everything except Stripe price IDs and payment links, so reconnect billing on the copy. It does copy the
Default Planflag, so un-default one of the two afterwards - Hide: retires a plan without deleting it. Existing subscribers keep it and you can still assign it from the Switch Plan modal
- Delete: a soft delete, blocked while any customer is assigned to the plan (including cancelled and free ones), with the error 'You have active subscribers on this plan'. Move customers off first
- Reorder: drag plans in the list to change their display order
Smart Setup creates three plans: Starter, Professional (the default, unless you already have one) and Enterprise. All three are created without Stripe price IDs. Connect prices before selling them.
Gotchas: the ones agencies actually hit
#Every item below is a behaviour that has surprised real agencies. Skim this list before and after any plan change: most support tickets about custom plans trace back to one of these.
Steps and details
- Hiding a feature is not retroactive. Configuration customers already enabled (for example video collection on a feedback form) keeps working until you edit the form, so audit existing records after downgrading a plan
Advanced Viewresets off each visit. If you cannot find Platform Mode, API Access, or the widget filter options, flick the switch- The plan editor's save opens a price-recommendation dialog: options only persist after you click
Save Plan Optionsthere Campaigns Sectionhides navigation but not direct URLs- Setting
API AccesstoUpgradestill 404s the API docs page. Only fullyEnabledunlocks the docs - NFC is hidden by default and the customer nav additionally requires a real NFC order before the item appears
- The 1.9% commission is silently waived for BRL, INR, MXN, MYR, SGD, and THB, so revenue reports will not show a fee for those currencies