Ecommerce Customer Support: How to Staff, Structure and Shrink It

Ecommerce customer support is the team, channels and tools a store uses to answer shoppers before and after they buy, mostly about orders, returns and products. Its cost grows with the business, because ticket volume rises in step with order volume unless something upstream changes.
My co-founders and I worked in ecommerce at P.E. Nation and SurfStitch before we built Keeyu for proactive e-commerce operations. I have sat with CX teams drowning in tickets they did not create, over problems that started days earlier in systems nobody was watching. So size the team for real questions, not broken orders. The practical answers come first, then the case for the cheaper path. Every order is a promise. Keeyu keeps it.
How many support agents does an ecommerce store need?
The number of agents a store needs is its monthly ticket volume divided by how many tickets one agent can close in a month. Ticket volume comes from your contact rate, which is tickets divided by orders over the same period, usually expressed per 100 orders.
The rule I use: compute your own contact rate from the last 30 days before you hire anyone, and size the team on the tickets that would still exist if every order had gone right. If you are planning a peak, add a buffer, because contact rate tends to rise during sales and delays, not only the order count.
When ticket volume spikes, hiring more agents is the wrong first response, because you are hiring humans to do work that systems should do. If the tickets come from orders that broke, more agents just scales the inefficiency.
Gorgias publishes the most widely used version of the formula. It assumes an agent handles 40 tickets a day, five days a week, 4.3 weeks a month, which gives 860 tickets per agent per month, and it puts most stores at 30 to 50 tickets per 100 orders, falling to about 20 for stores that automate heavily. That capacity number is an assumption, not a law. Eightx, a DTC finance firm, uses 660 tickets per agent per month (30 a day, 22 working days) for the same calculation, which is a 30% difference before you have looked at a single ticket of your own.
A worked example
An illustration: the order count is a round number, the first two contact rates come from the Gorgias range and the third from a store I ran, and agents are shown at both published capacity assumptions.
Store scenario | Orders a month | Tickets per 100 orders | Tickets a month | Agents at 860 | Agents at 660 |
|---|---|---|---|---|---|
Well run, low end | 6,000 | 30 | 1,800 | 2.1 | 2.7 |
Typical, high end | 6,000 | 50 | 3,000 | 3.5 | 4.5 |
Contact rate of 110 per 100 | 6,000 | 110 | 6,600 | 7.7 | 10.0 |
The last row is real. When I left P.E. Nation for Papinelle, I walked into an "absolute mess": 110% complaint tickets to order volume, nearly every one of them about an order. I brought Tracy across to run it, and without the system we had built at P.E. Nation she ended up working 18-hour days, six days a week. At that ratio the same 6,000-order store needs eight to ten agents just to keep up, and every one of them would be paid to explain problems the operation created.
What to outsource and what to keep in-house
Outsourced ecommerce support means paying an agency or a managed team to answer some or all of your contacts, often to cover nights, weekends or seasonal overflow. It works well for contacts that follow a written rule and badly for contacts that need someone to make a decision.
In practice there are three staffing models: your own hire, a dedicated offshore agent or virtual assistant you manage directly, and an agency that supplies and manages the agents for you. The decision rule below applies to all three.
If you can write the full answer as a saved reply, including what to check and what to say, it can be outsourced. If the answer depends on authority, such as approving a refund outside policy, reallocating stock, chasing a 3PL or filing a carrier claim, keep it in-house, because an outside agent will escalate it back to you anyway and the shopper waits twice.
- Good to outsource: order status replies where tracking is current, return initiations within policy, product and sizing questions answered from documented content, after-hours triage, and peak overflow.
- Keep in-house: exceptions and escalations, anything touching inventory, refunds outside policy, carrier and warehouse disputes, VIP customers, and the weekly review of why tickets arrive.
- Do first, either way: document your top 20 replies and your refund and return rules. An agency cannot follow a policy that only lives in someone's head.
What you keep in-house is also where support can earn money instead of only costing it. At P.E. Nation, Tracy's goal was for her customer service department to generate more revenue than it cost. That only works when the team's hours go to exchanges, saves and VIP shoppers rather than chasing stalled orders, which is one more reason to shrink the order-failure pile before you add headcount.
Outsourcing changes who answers the ticket. It does not change how many tickets your operation generates. If half your queue is shoppers asking about orders that stalled, an agency will bill you for every one of those conversations.
Which channels to support
A support channel is any place a shopper can reach you: email or a contact form, live chat, social messages, phone and self-service pages. Each one sets a response-time expectation, and an expectation you cannot meet costs more trust than not offering the channel at all.
The order of operations that works for a growing store:
- Email and a contact form first. It is asynchronous, so a small team can batch it, and it keeps a written record.
- A self-service order status page next, because it answers the most common question without a conversation. On Shopify this already exists as the order status page, which shoppers can use once a tracking number is on the fulfillment.
- Live chat only when someone is staffed to answer inside a couple of minutes during the hours it shows as online. An unanswered chat widget is worse than none.
- Social messages monitored daily, because complaints posted in public spread.
- Phone last, and only if your product or your shoppers need it. It is the most expensive channel per contact and the hardest to staff for peaks.
Gorgias publishes first response time benchmarks by channel that make the trade-off concrete:
Channel | Best-in-class first response | Baseline |
|---|---|---|
Under 1 hour | 12 hours | |
Live chat | Under 1 minute | 1.5 minutes |
Social media | 1 hour | 5 hours |
Helpdesk, chat and AI tools: what each one does
A helpdesk is software that collects contacts from every channel into one queue, routes them to agents and records the history. Chat tools and AI agents sit on top of it to answer or deflect common questions automatically.
These tools are worth having. If you want the basics, here is what a helpdesk does, and we compared the leading options in best ecommerce customer service software. But be precise about what they change. I think of a helpdesk, and the reactive AI that sits on top of it, as a hospital ER. An ER cannot prevent a heart attack, and a helpdesk cannot prevent a ticket. Both triage the problem after it has happened. They make each ticket faster and cheaper to handle. They do not reach into your warehouse or your carrier to find out why the order stalled.
That gap is where agent time goes. "Half a day wasted" is what I used to watch CX teams burn: hunting for orders, clicking between 5 systems, copy-pasting tracking numbers and apologizing to shoppers for problems they did not cause. An AI agent can answer "where is my order" instantly if the tracking data is right. If the order never left the warehouse, it confidently tells the shopper the wrong thing.
Gorgias reports that the median brand using its AI resolves 45% of AI-touched tickets end to end, with the top quartile at 65%. That is a real saving on the tickets AI touches. Notice what the number measures: tickets answered, not tickets avoided. For tools aimed at the second job, see ticket deflection tools.
The metrics worth tracking
Ecommerce support metrics fall into two groups: demand metrics, which count how many contacts the business generates, and handling metrics, which describe how well the team answers them. Most dashboards are built almost entirely from the second group.
When we ran P.E. Nation and SurfStitch, we realized we were measuring the wrong things. We obsessed over CSAT, first response time and average handle time, and the dashboards looked good but did not change a thing. Shoppers did not care how fast we replied. They cared that they never had to complain. These are the numbers I would track, in this order:
Metric | How to calculate it | Reference point |
|---|---|---|
Contact rate | Tickets / orders x 100, monthly, by reason | Gorgias: most brands 30 to 50 per 100 orders, about 20 with heavy automation; vertical medians at the $10M GMV band from 19 (toys and games) to 46 (electronics) |
WISMO rate | Where-is-my-order tickets / orders shipped x 100 | Pango: under 3% healthy, above 8% points to a structural problem |
Complaint prevention rate | Orders saved from becoming complaints / total at-risk orders x 100 | Our own measure; no external benchmark, track the trend |
Tickets per agent | Tickets closed / agent / month | |
First response time | Total first response time / tickets | Gorgias all-industry median: 6.3 hours, varying 5.5x across verticals |
AI resolution rate | Tickets resolved by AI alone / AI-touched tickets | Gorgias median: 45% |
Treat every external benchmark as a loose reference. Even within one vendor's data, medians run from 19 to 46 tickets per 100 orders by vertical, and capacity assumptions differ by 30% between sources, so the useful number is your own ratio, measured the same way every month, split by reason. If your contact rate falls while orders grow, the operation is getting better. If first response time improves while contact rate rises, nothing got better, because faster apologies do not change the fact that something still went wrong. Great response and resolution scores on those tickets mean you are fixing a problem no shopper wanted, and doing it really well. We wrote up why tickets prevented is the number we would put at the top of that list.
Where support volume actually comes from
Most ecommerce support volume comes from a few order-related reasons: order status, returns and exchanges, delivery problems and payment issues. Gorgias's ticket-audit guide traces each one to an operational cause, such as no proactive shipping update, an unclear return policy or checkout friction, which is why the fix usually sits outside the support team.
Before you decide headcount, outsourcing or tools, split your queue into two piles: genuine questions, and contacts caused by an order that did not do what was promised. The second pile belongs to operations. Every order is a promise. Keeyu keeps it. Our deeper breakdown of the biggest single category is on where is my order tickets.
In that guide, high where-is-my-order volume signals no proactive shipping updates or a poor tracking page; high returns volume signals a confusing return policy or no self-serve portal; payment and billing contacts come from checkout friction, which it calls "rarely a support problem". Returns alone are a large, predictable driver. The NRF and Happy Returns 2025 report estimates that 19.3% of online sales will be returned, against 15.8% of total retail sales.
The idea for Keeyu came from a warehouse sale at P.E. Nation during COVID, where a mismatch between storefront and warehouse inventory led to a meltdown and a flood of "where is my order" tickets. Tracy, who ran customer service and post-purchase ops for us at P.E. Nation and is now my co-founder, realized that if she had seen that mismatch in real time, she could have stopped the snowball. The support team inherited a problem that started in the warehouse.
The cheapest ticket is the one you never receive
A prevented ticket is a contact that never happens because the shopper's problem was fixed, or explained, before they noticed it. It costs nothing to handle and does not dent the shopper's trust, which no faster response can claim.
To put a number on it, divide your fully loaded monthly support cost (wages, tools, agency fees) by the tickets handled that month. That is your cost per ticket. Multiply it by the order-failure tickets from your audit and you have the monthly cost of broken orders landing on the support team.
As retailers we were faced with this very problem, how to prevent the ticket, and the answer comes in two layers.
Layer one: tell shoppers what is already true
Start with what your platform already gives you. Once a fulfillment carries a tracking number, Shopify's order status page lets the shopper check the shipment without contacting you, and Shopify sends a shipping confirmation when you fulfill and a shipping update when tracking changes. Make sure every fulfillment carries a tracking number, that the notification goes out, and that your delivery estimates at checkout are ones your warehouse can actually hit.
Layer two: catch the orders that stop moving
Notifications only help when the order is moving. The expensive tickets come from orders that stall without producing any event at all: an order that never synced to the warehouse, a label printed and never scanned, a payment held for review. Nobody gets an alert, so the shopper is the one who discovers it.
At one US storefront we work with, 70 Shopify orders did not sync to the warehouse while every order around them did, and they had not shipped for 3 days. Keeyu detected it instantly, but the team had not looked at the platform yet. Had they not opened it, they would never have known those 70 orders had not shipped, and that would have been 70 inbound "where is my order" tickets. That is the case for automating the fix instead of relying on someone to look. Clutch uses the same view to flag orders at risk of breaching SLA before shoppers notice, which you can read in the Clutch case study.
This is what we mean by proactive e-commerce operations. Keeyu connects to your storefront, warehouse, carriers and helpdesk, and runs one loop on every order: Detect. Decide. Act. It detects issues across payment, fulfillment, shipping, delivery and returns, decides what needs to happen, then fixes it or alerts the right team before the shopper has to chase. Keeyu is not a helpdesk or a chat tool, and it does not replace Gorgias or Zendesk. It sits upstream of them, so the queue they hold is smaller. Keeyu gets shoppers what they want, on time, as promised. For the concept behind the two operating modes, read proactive vs reactive customer service.
A 30 day plan for deciding what to do
A support staffing audit is a 30-day count of every contact by reason, set against orders, that separates genuine questions from order failures before anyone is hired. By the end you know your contact rate, how much of it comes from order failures, and how many agents the remaining genuine questions need. In my past life as CEO of large ecommerce brands, I restructured customer support to report directly to me and combined operations and customer support into one department. That gave the team full visibility upstream, into the operational failures that stop a shopper getting what they want, which leads to a complaint, which leads to a ticket. The audit gives you that same upstream view.
- Days 1 to 7, count. Pull every contact from the last 30 days across all channels, plus your order count for the same period. Calculate tickets per 100 orders and your WISMO rate.
- Days 8 to 14, tag. Assign every contact a reason, then mark each reason as either a genuine question or an order failure (late, stuck, wrong, damaged, unsynced, payment held). The Gorgias audit guide suggests your top two or three categories are where the leverage is.
- Days 15 to 21, fix the top order failure. Pick the single biggest failure reason and fix it at the source: tracking on every fulfillment, a sync check between store and warehouse, an honest delivery promise at checkout. Do not fix it with a macro.
- Days 22 to 30, size the team. Run the formula on the genuine questions only: those tickets, divided by your agent capacity, is your baseline headcount. Outsource the repeatable share of that baseline if it makes sense, and keep exceptions in-house.
If the order-failure pile turns out to be most of your queue, fix operations before you hire, because your support team is currently paying for it. If that is your queue, you can book a demo or see the brands already running it. For the wider strategic frame, our piece on customer service strategy covers how demand, handling and capacity fit together.
Every order is a promise. Keeyu keeps it.
Frequently Asked Questions
What does an ecommerce customer service agent do?
An ecommerce customer service agent answers shoppers before and after purchase across email, chat, social and sometimes phone. Most of the work is order status, returns and exchanges, delivery problems and product questions. In practice a large share of their day goes to looking up orders across several systems, which is why giving agents a single view of the order matters as much as the helpdesk.
How many support agents do I need per 1,000 orders a month?
Multiply orders by your contact rate to get tickets, then divide by monthly agent capacity. At 30 tickets per 100 orders, 1,000 orders a month produce 300 tickets, which is about a third of one agent using the Gorgias capacity figure of 860 tickets per agent per month. Use your own contact rate from the last 30 days rather than a published average, because published rates vary widely.
What is a good tickets per 100 orders rate?
Gorgias says most ecommerce brands see 30 to 50 tickets per 100 orders, closer to 20 with heavy automation, and its March 2026 medians for $10M GMV brands range from 19 for toys and games to 46 for electronics. Other published figures disagree by a wide margin, so the best benchmark is your own rate tracked monthly and split by reason. A falling rate while orders grow is the clearest sign the operation is improving. See how we think about tickets prevented as the headline metric.
Should I outsource ecommerce customer support?
Outsource contacts you can answer with a written rule, such as status replies, in-policy returns, after-hours triage and peak overflow. Keep anything that needs authority in-house, including refunds outside policy, inventory decisions and carrier or warehouse disputes. Outsourcing changes who answers tickets, not how many your operation creates.
What is a WISMO rate?
WISMO rate is the number of where-is-my-order tickets divided by orders shipped, times 100. Pango, a vendor in this space, treats under 3% as healthy and above 8% as a sign of a structural problem with tracking, delivery promises or a carrier lane. We cover the causes and fixes in detail on our where is my order page.
Which support channels should a small ecommerce store offer?
Start with email or a contact form and a self-service order status page, since together they cover the most common questions without needing someone online. Add live chat only when you can staff it to answer within a couple of minutes, and monitor social messages daily. Phone is the most expensive channel to run, so offer it last and only if your shoppers need it.
Can AI handle ecommerce customer support on its own?
AI agents handle a meaningful share of routine questions: Gorgias reports its median brand resolves 45% of AI-touched tickets without a human. They answer from the data they can see, so when an order has stalled in the warehouse without any tracking event, AI can repeat stale information. AI works best paired with a way to detect and fix order failures before shoppers ask.
References
- 1. Gorgias, "A 3-Step Framework to Forecast CX Headcount for BFCM", https://www.gorgias.com/blog/forecast-customer-service. Agent capacity formula (40 tickets a day x 5 days x 4.3 weeks = 860 tickets per agent per month) and the typical ratio of 30 to 50 tickets per 100 orders, about 20 with automation.
- 2. Gorgias, "How to Audit Your Ticket Volume (and Actually Fix What's Driving It)", https://www.gorgias.com/blog/ticket-volume. The 30-day audit, the ticket category to root cause table, and median tickets per 100 orders by vertical (Gorgias Ecom Lab, March 2026).
- 3. Gorgias, "14 Customer Service Metrics Every Support Team Should Be Tracking", https://www.gorgias.com/blog/customer-support-metrics. All-industry median first response time of 6.3 hours, 5.5x variation across verticals, and median AI resolution of 45% of AI-touched tickets (top quartile 65%).
- 4. Pango, "WISMO Rate: How to Measure, Benchmark and Reduce It", https://pango.ai/resources/wismo-rate-benchmark. WISMO rate definition and the under 3% and above 8% bands (vendor source).
- 5. Gorgias, "Ecommerce Customer Service: Your Guide to Customer Loyalty", https://www.gorgias.com/blog/ecommerce-customer-service. First response time benchmarks by channel (email, live chat, social media).
- 6. NRF and Happy Returns, "Consumers Expected to Return Nearly $850 Billion in Merchandise in 2025", https://nrf.com/media-center/press-releases/consumers-expected-to-return-nearly-850-billion-in-merchandise-in-2025. 15.8% of annual retail sales and 19.3% of online sales expected to be returned in 2025.
- 7. Shopify Help Center, "Order status page", https://help.shopify.com/en/manual/fulfillment/setup/order-status-page. Shoppers can check order status themselves when a fulfillment carries tracking.
- 8. Shopify Help Center, "Customer notifications", https://help.shopify.com/en/manual/fulfillment/setup/notifications/customer-notifications. Shipping confirmation is sent when an order is fulfilled and shipping update when tracking information changes.
- 9. Eightx, "Support tickets per 1,000 orders: the DTC benchmark nobody publishes", https://eightx.co/blog/average-ecommerce-customer-tickets-per-1000-orders-by-vertical-2026. An alternative capacity assumption of 660 tickets per agent per month, cited only to show capacity assumptions differ.
Keep the promise.
See how Keeyu catches and fixes post-purchase issues before customers notice.
In one call, we’ll map your operations and show how Keeyu detects issues, decides what needs to happen, and takes action across your existing systems.
We’ll confirm your integration requirements and rollout plan during the demo.

