Table of Contents
Why Generic Macros Break Down for Subscriptions
Standard ecommerce macros assume a one-and-done transaction. Order shipped, here's your tracking, have a nice life. Subscriptions are ongoing relationships, and the tickets reflect it. What happened with my last order? What's charging next week? Why did my box change?
Answering those requires context. The worst macro in your library is the one that sends a subscriber to a help article when they need an action taken before tomorrow's charge. "Please see this guide on pausing" arriving four hours before a $60 renewal isn't support. It's a churn accelerant. Macro quality directly impacts retention, because a botched deflection costs you a subscriber, not just a ticket.
MatchaBar's team saw this dynamic up close before eliminating their support blockers. The fix wasn't more macros. It was the right ones, organized so agents grab them fast, powered by real subscription data instead of placeholders.
The 15 Macros Every Subscription Support Team Needs
Macro | Use case | Urgency |
|---|---|---|
Pause Before Next Charge | "Don't charge me tomorrow" | High |
Billing Failure Resolution | Failed payment, confused customer | High |
Swap Product Before Ship | Wrong flavor about to ship | High |
Update Payment Method | Expired card | Medium |
Skip Next Order | "Too much product piling up" | Medium |
Change Delivery Frequency | Cadence mismatch | Medium |
Cancel: Too Expensive | Price-driven cancel request | High |
Cancel: Don't Need Right Now | Overstock-driven cancel request | High |
Cancel: Product Issue | Quality-driven cancel request | High |
Portal Login Help | "I can't log in" | Medium |
How to Skip (Self-Serve) | Teachable skip request | Low |
How to Change Frequency (Self-Serve) | Teachable frequency request | Low |
Billing Failure Proactive Outreach | You noticed before they did | Medium |
Long Pause Check-In | 60+ days paused | Low |
Subscription Benefits Reminder | "Why am I subscribed?" | Low |
Note trigger phrases for each in your macro map ("charge tomorrow," "forgot password," "too expensive") so new agents match ticket to macro instantly. Mark which ones auto-close and which need follow-up.
Category 1: Time-Sensitive Actions (Never Deflect These)
These are the "fix this before I get charged" tickets. Deflecting them loses subscribers, full stop.
The structure for every time-sensitive macro is the same. Confirm the action you took, state the outcome, name the date. Not "here's how you can pause," but "I've paused your subscription, your next charge date is now March 14, and nothing bills until you say so."
Your agents can do this directly because Skio's subscription management tools give them pause, skip, and swap powers without touching the customer's portal. Use them. A subscriber panicking about tomorrow's charge does not want a tutorial.
Category 2: Self-Service Deflection (Portal Power)
Deflection macros have a double job. Solve this ticket and prevent the next three. The formula is walk them through the fix now, then show them the portal path for next time.
The single biggest deflection killer is the login wall. A customer told to "manage it in your portal" who can't log in becomes a second, angrier ticket. Every deflection macro should include a magic login link, which drops the customer straight into their portal with no password. SIMULATE cut their support load partly by killing exactly this friction.
Pro tip that outperforms everything else in this category. Embed a short GIF or screen recording of the portal action in the macro. Customers follow moving pictures far better than numbered text steps.
Category 3: Cancellation Deflection (The High-Stakes Saves)
These macros directly move your retention rate, so they deserve the most care.
The structure is empathize, offer alternatives, make it easy, respect the choice. For "too expensive," offer a pause, a skip, or a frequency change before accepting the cancel. For "don't need it right now," lead with pause and make reactivation sound as easy as it actually is. For product issues, offer a swap and flag patterns to your product team.
Give three genuine alternatives, then honor the decision without a fight. Never guilt-trip. A macro that reads as desperate does more brand damage than the cancellation itself. And when the customer proceeds anyway, they route through your Cancel Flow, which gets one more structured save attempt.
Category 4: Proactive "We Noticed" Messages
The best support ticket is the one that never gets filed. Three proactive macros worth automating:
Billing failure outreach. "We noticed your payment didn't go through. Here's a one-click link to update it before your next order." Sent from your dunning flow, backed by Skio's payment recovery, this converts angry "why did you charge me" tickets into quiet fixes
Long pause check-in. At 60 days paused, ask whether they want to reactivate or cancel. Ambiguity helps nobody
Frequency mismatch. Subscriber on 30 days who skips every other order? Suggest 60 days before the overstock becomes a cancellation
Proactive messages prevent tickets and signal that someone is paying attention. Both matter.
The Macro Formula for Subscriptions
Every subscription macro follows five lines:
Acknowledge their specific situation, using variables like {{customer.first_name}} and {{order.next_charge_date}}
State what you're doing or what they can do
Confirm the outcome or next step
Set the expectation for next time, usually the portal path
Offer more help, while making clear the main issue is resolved
What never works as the primary solution is "please read this article." Specific dates, specific actions, specific outcomes. That's the whole formula.
Copy-Paste Templates (Customize the Voice)
Template 1: Pause Before Next Charge (high urgency)
Hi {{customer.first_name}}, done! I've paused your subscription, so the charge scheduled for {{order.next_charge_date}} will not go through. Your subscription will stay paused until you're ready. When you want to restart, it's one click in your portal: {{customer.portal_link}}. Anything else you need, just reply here.
Template 2: Portal Login Help (deflection)
Hi {{customer.first_name}}, no password needed! Here's a magic link that logs you straight into your account: {{customer.portal_link}}. From there you can skip, pause, swap products, or update payment anytime. Save this email and you'll never need a password again.
Template 3: Cancel, Too Expensive (deflection)
Hi {{customer.first_name}}, totally understand, and I can take care of that for you. Before I do, a couple of options that might fit better: I can pause your subscription so nothing bills until you restart, skip your next order to give you breathing room, or stretch your deliveries to every {{subscription.frequency}} so it costs less per month. Want me to set up any of those? If you'd still rather cancel, just say the word and I'll process it right away.
Template 4: Billing Failure (time-sensitive)
Hi {{customer.first_name}}, heads up that the payment for your {{order.total}} order didn't go through. This is usually an expired card or a bank hiccup, nothing dramatic. You can update your payment method in about 20 seconds here: {{customer.portal_link}}. Once it's updated we'll retry automatically and your order ships as planned.
Template 5: How to Skip Next Order (deflection)
Hi {{customer.first_name}}, easy! I've skipped your upcoming order, so your next charge will be {{order.next_charge_date}}. For future reference, you can skip anytime yourself: log in here {{customer.portal_link}}, find your subscription, and hit Skip. No emails needed, though we're always happy to help.
Each template needs your brand voice layered on. Emoji or no emoji, formal or casual, sign-off style. The bones stay the same.
Organizing Your Library (Naming and Tagging for Speed)
"Subscription Help 1" through "Subscription Help 14" is how macro libraries die. Agents can't find anything, so they free-type everything, and consistency evaporates.
Name with prefixes and urgency. "SUB - Pause Before Charge (Urgent)." "CANCEL - Too Expensive (Deflect)." "BILLING - Failed Payment (Same-Day)." Tag by urgency level and by action type, whether the macro resolves, deflects, or escalates.
Then build a macro map, a simple spreadsheet listing every macro, its trigger phrases, and when to use it. New agents onboard against the map and should be pulling the right macro within seconds of reading a ticket. Gorgias's own organization docs cover the mechanics.
Variables That Make Macros Actually Useful
Variable | What it does | Use case |
|---|---|---|
{{customer.first_name}} | Personalizes the greeting | Every macro |
{{order.next_charge_date}} | Shows the next billing date | Pause, skip, billing macros |
{{subscription.frequency}} | Current delivery cadence | Frequency change offers |
{{subscription.status}} | Active, paused, cancelled | Status confirmations |
{{order.total}} | Upcoming charge amount | Billing failure outreach |
{{customer.portal_link}} | Direct portal login link | Every deflection macro |
These subscription variables come from Skio's Gorgias integration, which pipes live subscription data into the ticket view. Without the integration your macros are guessing. With it, every reply quotes real dates and real amounts. Find available variables in Gorgias's insert-variable dropdown, documented in their macros guide.
When NOT to Use a Macro
The customer has contacted you three or more times about the same issue. They need a human, visibly
Multi-issue tickets stacking billing plus swaps plus loyalty questions. Too many variables for a template
High-value customers, whether that's LTV or 12+ orders. Write it fresh
Anything touching refund disputes or chargebacks. Legal sensitivity means no templates
Anyone who explicitly asks for a human or a manager
The working rule is simple. If you'd edit more than half the macro, skip the macro.
Measuring Macro Performance
Track four numbers per macro. Usage count, resolution rate, follow-up ticket rate, and CSAT.
The diagnostic patterns write themselves. High usage with low resolution means the macro isn't solving the problem. Low usage with high resolution means a great macro nobody can find, which is a naming problem. A high follow-up rate means you're deflecting where you should be resolving.
Review monthly, retire the duds, and A/B test the high-stakes ones. Does offering three cancel alternatives outperform two? Your data knows. Aim for the large majority of subscription tickets resolved on the first macro response, and treat anything below that as a library problem, not an agent problem.
Quarterly Maintenance
Your product changes, your portal changes, your policies change. Macros rot quietly.
Every quarter, audit the full library for outdated screenshots, dead links, and superseded policies. Pull the ten most-edited macros, because constant agent edits mean the template is wrong. Add macros for any question you've seen ten or more times. Archive anything untouched for 90 days. Note when each macro was last updated and by whom, and walk the team through changes so nobody keeps using the old pause macro from muscle memory.
How Skio's Gorgias Integration Makes All of This Easier
Everything above gets simpler with the Gorgias integration turned on. Agents see next charge date, subscription status, order history, and the portal link directly in the ticket view, no tab-switching. Macros pull live variables instead of placeholders. And agents can pause, skip, and swap right from the ticket, which shrinks your library. You don't need an elaborate "how to pause" deflection macro when the agent can just pause and confirm.
Fewer macros, better data, faster resolutions. That's the whole pitch.
FAQ
How many macros should a subscription support team have?
Start with 15 to 20 covering pause, swap, skip, billing, cancellation, and portal help. Beyond roughly 50, the library becomes unmanageable.
What's the difference between a deflection macro and a resolution macro?
Resolution macros solve the issue directly, you pause the subscription yourself. Deflection macros teach the customer the portal path. Resolve for urgent issues, deflect for routine ones.
Should I use macros for cancellation requests?
For the deflection attempt, yes, offering pause, skip, or swap alternatives. If they still want to cancel, write a personal response rather than a generic confirmation.
How do I know if my macros are working?
Track resolution rate, follow-up ticket rate, and CSAT per macro. Strong macros resolve the ticket on first response with no follow-up.
Can I use these macros in Zendesk?
Yes. The structure and copy port anywhere. Adjust the variable syntax, Zendesk uses {{ticket.requester.first_name}}, and connect your subscription data source.
How often should I update the macro library?
Full audit quarterly, immediate updates when the product or policies change, and a new macro whenever a question repeats ten or more times.
































