Gorgias macros: stop typing the same reply over and over

We tested and compared the top options for gorgias macros. Here's what we found about pricing, performance, and ease of setup.
Ruben Boonzaaijer
Written by
Ruben Boonzaaijer
Maurizio Isendoorn
Reviewed by
Maurizio Isendoorn
Last edited 
June 18, 2026
gorgias-macros
In this article

This post in 30 seconds.

  • A copy-paste starter library of the 10 macros a Shopify support team should build first, with the real variable strings that pull order data automatically.
  • WISMO alone is 30-50% of DTC tickets, and a good macro turns a 2-5 minute reply into one click.
  • Written for founders, COOs, and Heads of CX at $10M-$100M Shopify brands running Gorgias with 3-12 reps.

Open your Gorgias queue on a Monday and scroll. Most of what you see is the same handful of questions wearing different names. Where's my order. Can I return this. How do I pause my subscription. Your reps know the answers cold, which is exactly the problem. They're spending their day retyping replies they've typed a thousand times.

Macros are the fix for that, and most teams use maybe a tenth of what they can do. A macro inside Gorgias isn't just a saved reply. It's a one-click action that drops a personalized response into the composer and can also tag the ticket, change its status, and push a real change to the Shopify order. Built right, a small library of them takes the routine work off your team's plate so the queue stops eating the day.

This is the guide I'd hand a new Head of CX: what a macro actually is, how to build one, the variables and actions worth using, and the 10 macros I'd build before anything else. We run phone support for 50+ Shopify brands, so if you're drowning in the same questions over and over, this is the inbox half of the answer. If you want the other half, book a 30-min call and we'll show you what those same questions look like coming in by phone.

What a Gorgias macro actually is (and what it isn't)

A macro is a pre-written response your reps apply in a single click. That part you probably know. The part most teams skip is that a macro can also take actions on the ticket at the same moment it fills the reply.

A macro is a reply plus a set of actions, fired together in one click, not just a chunk of saved text. When a rep applies your "Order on the way" macro, it can drop the personalized message, tag the ticket "WISMO", set the status to closed, and (if you want) refund the shipping cost on the last Shopify order. One click, the whole job done.

That's the difference between a macro and the canned-reply feature you've used in every other helpdesk. According to eesel's guide to Gorgias macros, a reply that takes an agent 2-5 minutes to write by hand drops to seconds with a macro. Across a queue where WISMO runs 30-50% of tickets in most DTC stores, that's not a small optimization. That's most of your team's day, which is why automating WISMO is the first place a macro library pays off.

Gorgias ships two starter macros out of the box ("Generic: How can I help?" and "Generic: Sign off."). Useful as a demo, useless as a library. The value is in the ones you build for your store's actual questions. For the wider picture of how the platform fits together, our breakdown of the Gorgias ticketing system walks through where macros sit alongside views, rules, and tags.

How to build a macro in Gorgias

Building one takes about two minutes. The path is the bit people hunt for.

In the Gorgias dropdown menu (top left), go to Workflows → Tools → Macros, then click Create macro in the top right. From there:

  • Name it with a convention you'll actually keep (more on naming later). "WISMO: order shipped" beats "macro 14".
  • Write the response in the response text field. This is where variables go (next section).
  • Add tags if you want the macro to label the ticket (e.g. "returns") when it's applied.
  • Add actions if the macro should do something to the ticket beyond replying: set status, assign, refund shipping, and so on.
  • Click Create macro. Done.
A screenshot of the Gorgias helpdesk homepage
A screenshot of the Gorgias helpdesk homepage

One thing to know before you hand this to the team: only owners, admins, and leads can create or edit macros, but every rep can apply them. That's the right split. You want a small group owning the library and everyone else using it, not 12 people each spinning up their own version of the returns reply.

To change one later, open it, edit, and save. To spin a variation, hover the macro row and duplicate it. We'll cover archiving versus deleting in the hygiene section, because that distinction matters more than it sounds.

Macro variables: how to personalize at scale

Variables are what separate a real macro from a form letter. They pull live data from the ticket and your Shopify store into the reply, so the message reads like a rep wrote it for that one customer.

The syntax is double curly braces: {{variable.name}}. You can type the path or pick it from the dropdown in the macro editor. When the macro is applied, Gorgias swaps each variable for the real data from the ticket; if the data isn't there, the variable just renders blank.

The ones worth knowing first:

Variable What it pulls in
`{{ticket.customer.firstname}}` Customer's first name
`{{ticket.customer.email}}` Customer's email
`{{current_user.name}}` The agent's name (for the sign-off)
`{{ticket.customer.integrations.shopify.orders[0].name}}` Their last order number
`{{ticket.customer.integrations.shopify.orders[0].line_items[0].name}}` The first product on that order

A WISMO macro with the order number, shipping city, and tracking link wired in answers the question before the customer finishes reading it. You can even format dates with a moment.js filter, e.g. {{...refunds[0].processed_at|datetime_format("MMM Do YY")}} to write "refunded Apr 3rd 26" instead of a raw timestamp.

The trap is over-stuffing. A reply with eight variables breaks the second one of them is empty. Use the two or three that carry the message and write the rest as plain, warm copy.

Macro actions: the part most teams underuse

This is where macros stop being canned replies and start being workflow. An action is something the macro does to the ticket or the order when it's applied.

The default actions you can stack onto any macro:

  • Set status and snooze: close the ticket or snooze it to resurface in three days, all in the same click as the reply.
  • Tag the ticket: label it "WISMO", "returns", "subscription" so your reporting and rules have something to work with.
  • Assign agent or team: hand a damaged-item ticket straight to the senior rep who owns those.
  • Set priority, set subject, send an internal note: the housekeeping that usually gets skipped because it's a second step.
  • Set a ticket or customer field, or fire an HTTP hook: push data out to another system when you need it.

When your Shopify store is connected, macros can also touch the order directly:

  • Cancel the last order or a specific order
  • Duplicate the last order
  • Edit the last order's shipping address
  • Refund the last order's shipping cost, or issue a partial refund

If you run Recharge for subscriptions, macros can cancel or reactivate the last subscription and refund the last charge too. So a "pause my subscription" macro can both reply to the customer and take the action, in one move.

One constraint to file away for the rules section: a macro that contains an HTTP-hook action can't be used inside a rule. It'll work fine when a rep applies it by hand, but it won't show up as an option when you build a rule that auto-applies a macro.

The 10 macros every Shopify support team should build

Here's the part the docs never give you: a starting library. Build these 10 first and you'll cover the bulk of a typical DTC queue. Each one is the reply plus the actions I'd attach. Keep the copy in your own voice, swap in your policy specifics, and wire the variables.

1. WISMO: order on the way. The single highest-volume macro you'll own, because over a third of all support tickets are WISMO. Pull the order number, shipping city, and tracking link. Tag "WISMO", set status to closed.

Hi {{ticket.customer.firstname}}, good news, your order {{...orders[0].name}} is on its way. You can track it here: [tracking link]. It usually lands within the original window. We'll keep an eye on it from our end too.

2. Order delayed / no tracking movement. The harder WISMO. Acknowledge, reset the expectation, offer the next step. Tag "WISMO-delayed", assign to a rep, leave it open.

3. Return request. Pull the order and link your returns portal. Tag "returns", snooze until the label's used. Pair it with your returns management workflow so the macro and the policy say the same thing.

4. Exchange / wrong size. Different from a return, and customers hate being told to "return then reorder". Offer the exchange path directly. Tag "exchange".

5. Cancel or edit an order. Use the Shopify cancel-order or edit-shipping-address action so the rep doesn't bounce to the admin. Pair it with a tight order cancellation and refund policy so the macro text matches what you actually allow. Tag "order-edit", set status to closed once done.

6. Subscription pause / skip / cancel. The retention-critical one. A Recharge action handles the change; the reply offers the skip-don't-cancel option first. Tag "subscription".

7. Discount / price-match / first-order code. Have the approved language ready so reps don't freelance the discount. Tag "discount" so you can report on how often it's asked.

8. Product or sizing question. Link the right product page or sizing chart. This is the macro your knowledge base should feed, so the answer stays current as the catalog changes.

9. Damaged or missing item. Sensitive, so keep it human. Apologize, ask for a photo if you need one, assign to the rep who owns claims. Tag "damaged".

10. Escalation handoff + sign-off. The clean "passing you to a specialist" message plus a consistent sign-off with {{current_user.name}}. Tag "escalation", assign the team.

That's the spine. Ten macros built well will cover the majority of a typical Shopify queue, which is the same majority that's quietly eating your CS payroll. WashCo, a Shopify brand we launched, recovered $22,664 in its first 7 days once the routine work stopped landing on a human, and the principle is identical here: the repeatable questions don't need a person typing the answer.

If you'd rather have someone map this library to your store's actual ticket mix, book a 30-min call and we'll do it live.

Macros vs rules: which does what

These two get mixed up constantly, so here's the clean version.

A macro is something a rep applies (or a rule applies for them). A rule is automatic if-this-then-that logic that runs on its own. Rules live at Workflows → Tools → Rules, and one of the things a rule can do is apply a macro.

Macro Rule
Who triggers it A rep, in one click (or a rule) Runs automatically on matching tickets
What it is A templated reply + ticket actions If-this-then-that automation
Typical job Answer the WISMO ticket Tag, route, or auto-apply a macro
Example "Order on the way" reply If subject has "cancel order", apply the cancel macro

The simplest way to remember it: a macro is the answer, a rule is the trigger that can fire the answer for you. Build the macro library first, then layer rules on top of the macros that are safe to send without a human reading the ticket.

Two watch-outs. First, the constraint from earlier: a macro with an HTTP-hook action can't be used in a rule. Second, if a rule auto-applies a macro that replies, and you also have an AI agent answering, the customer can get two messages. Decide which one owns the reply. We're keeping the rules detail light here on purpose, because rules deserve their own walkthrough.

How Gorgias AI macro prediction changes onboarding

A big library has a downside: reps can't find the right macro fast. Gorgias' answer is prediction. The AI reads the incoming question and surfaces the top three recommended macros at the top of the list, with the rest shown alphabetically below.

The real win isn't speed for veterans, it's that a brand-new rep picks the right macro on day one without memorizing the library. Consistency goes up, training time goes down, and your best-written reply gets used instead of whatever a tired rep half-remembers at 4 p.m.

It's worth saying what this is and isn't. Prediction helps a human pick a macro faster. It doesn't understand a customer who phrases the same question five different ways the way a real agent does, and a macro library built for the inbox doesn't carry over to fully automated answering. Those are different tools, which brings us to the gap macros leave open.

Keeping your macro library clean

A macro library rots if nobody owns it. Policies change, products launch, and six months later half your macros quote a return window you don't offer anymore. A few habits keep it usable:

  • Name with a convention. "Category: action" ("WISMO: shipped", "Returns: request") so the list sorts into something a rep can scan.
  • Archive, don't delete. Archiving hides a macro from agents but keeps it recoverable; deleting is permanent. Archive the seasonal and the retired, delete almost nothing.
  • Sort by usage. Gorgias lets you sort macros by usage count, so you can see which ones earn their place and which are dead weight.
  • Use language tags. Tag a macro's language and the list auto-filters to the ticket's language, which matters the moment you sell outside one market.
  • Bulk-edit with CSV. You can export every macro to CSV, revise in a spreadsheet, and reimport, which beats hand-editing 40 macros when a policy changes.

Do a 30-minute library review once a quarter. It's the cheapest reliability fix in your whole support stack.

The one thing a macro can't do: answer the phone

Here's the gap nobody building a macro library notices until it's costing them.

Reading call logs across the 50+ Shopify brands we run phone support for, the questions hitting their best-built macro libraries are the exact same ones rolling to voicemail after 6 p.m. WISMO, returns, subscription pauses. A macro fires instantly in the inbox. It can't pick up the phone.

That's the asymmetry. You can build the perfect "order on the way" macro and it does nothing for the customer who calls instead of emailing, hits voicemail, and buys from someone else. Missed calls don't queue politely the way tickets do; the caller just leaves.

This is the half macros can't reach, and it's the half Ringly covers. Ringly is AI phone support for Shopify brands. The AI answers inbound calls 24/7, checks order status in your Shopify store, handles returns and product questions from your knowledge base, and escalates the calls that need a human to whatever helpdesk you already run, Gorgias included. Across 50+ brands it resolves 73% of calls on its own at roughly $0.42 per resolved call. Think of it as the macro library for the phone line: the routine call gets the right answer in one step, without a rep. If you've never staffed a 24/7 phone line, that's exactly the volume this picks up.

Ringly dashboard showing 73% resolution, 84% deflection, and attributed revenue from handled calls
Ringly dashboard showing 73% resolution, 84% deflection, and attributed revenue from handled calls

What routine phone calls cost vs Ringly

The math is the same shape as the macro math: the routine work doesn't need a person, so stop paying a person to do it.

Take a typical $50M Shopify brand running a 6-rep CS team:

Line item Today With Ringly
6 reps × $4K loaded per rep $24,000/mo n/a
Ringly (about $5K/mo) n/a $5,000/mo
Net monthly CS spend $24,000/mo $5,000/mo
Monthly savings n/a $19,000/mo
Annual savings n/a $228,000/yr

That's roughly 70% of repeatable calls (order status, returns, product questions, the same five things over and over) handled by the AI. The other 30%, the genuinely complex calls, still go to your team, who now have time to actually solve them. If you want to put your own numbers against that, our guide to scaling support without hiring breaks down the same logic for the whole queue.

Frequently asked questions

What is a macro in Gorgias? A macro is a pre-written response your reps apply in one click. Beyond the text, it can tag the ticket, change its status, and take Shopify actions like refunding shipping, so the reply and the workflow happen together.

How do I create a macro in Gorgias? Go to Workflows → Tools → Macros, click Create macro, then add a name, the response text, any tags, and any actions. Only owners, admins, and leads can create macros, but every rep can apply them.

What's the difference between a macro and a rule? A macro is the answer a rep applies in one click. A rule is automatic if-this-then-that logic that runs on its own and can auto-apply a macro. Build the macros first, then add rules on top of the ones safe to send without a human.

Can a Gorgias macro pull in order tracking automatically? Yes. Using Shopify variables like the last order's name and tracking link, a WISMO macro fills in the order number and tracking URL for that specific customer when it's applied.

Can a rule send a macro automatically? Yes, a rule can apply a macro without a rep. The one exception: a macro that contains an HTTP-hook action can't be used inside a rule.

How many macros should we have? Start with the 10 in this guide and grow from there based on your actual ticket tags. The number matters less than keeping the library clean, so archive what you don't use and review it quarterly.

Do macros work for phone calls? No. Macros are built for the inbox, so the same questions arriving by phone still hit a human or roll to voicemail. That's the gap an AI phone agent like Ringly fills.

Talk to us

Real Shopify brands on Ringly: WashCo, BioLongevity Labs, TechCraft Studio, Gear Rider
Real Shopify brands on Ringly: WashCo, BioLongevity Labs, TechCraft Studio, Gear Rider

If you run a $10M-$100M Shopify brand, macros will fix your inbox. They won't touch the calls coming in after hours, and that's usually the volume nobody's measuring. A 30-min call is the fastest way to see what those missed calls are actually costing you.

The 3-layer guarantee.

  1. Live in 14 days or it's free until launched.
  2. 65% resolution in 90 days or we refund the last 3 months of subscription fees.
  3. We keep working free until we hit it.

Ruben (Ringly co-founder) takes these calls personally.

Book a 30-min call →

AI phone agent for Shopify. Handles calls. Brings in orders.
AI phone agent for Shopify. Handles calls. Brings in orders.
Hear AI handle calls
See how it works
Article by
Ruben Boonzaaijer

Hi, I’m Ruben! A marketer, Claude addict, and co-founder of Ringly.io, where we build AI phone reps for Shopify stores. Before this, I ran an AI consulting agency, which eventually led me to start Ringly together with Maurizio. Good to meet you!

Read other blogs

Let Seth handle the calls your team shouldn't

Go live in under an hour. Escalates only when needed, and brings in attributed orders along the way.
Dashboard showing Seth AI support's call metrics: 28.5x ROI, 64% resolution, 84% deflection, $25,801 revenue.