How we actually work
Concrete answers to the eight questions every smart buyer asks before hiring an ops agency. Specific tools, processes, time frames, no marketing language.
Q1SOP structure
Every recurring task we run for a client lives in a documented SOP. New SOPs get created the first time a task happens for that client, refined the second time, and become reference-grade by the third.
The SOP library is structured as a Notion workspace per client with a fixed folder pattern:
| Folder | What it contains |
|---|---|
00_brand | Brand voice document, banned phrases, product positioning, naming conventions |
01_orders | Standard processing, exception handling, partial fulfillments, address changes, gift orders, B2B |
02_inventory | Reorder points per SKU, supplier contact list, backup-supplier matrix |
03_support | Macro library, escalation matrix, banned phrases, response tone examples |
04_apps | Klaviyo flows, Gorgias setup, Recharge configuration, helpdesk macros |
05_reporting | Daily briefing template, weekly review format, monthly performance review |
99_edge_cases | One-off situations documented so the next person isn't surprised |
Each SOP follows the same internal structure: trigger (when this happens), steps (numbered list with screenshots), escalation (who to ping if blocked), QA check (what "done" looks like), last reviewed date.
SOPs are versioned. When a process changes, the previous version stays accessible with a date stamp so we can track why a process evolved and roll back if a change causes problems.
Why this matters: When a VA gets sick or leaves the engagement, documented SOPs mean the backup operator can step in within an hour rather than spending two weeks learning the account from scratch.
Q2Onboarding a new Shopify brand
Onboarding is 14 calendar days from discovery call to full handover. Compressed timeline because most clients are already losing money to the operational gap we're stepping into. The schedule:
- Day 0: Discovery call (30 min) Map current operational layer, identify the highest-value gaps, agree scope. Sign engagement letter same day or next.
- Days 1-3: Audit week Full read of the Shopify admin, app stack, support inbox, supplier directory, current SOPs (if any). Output: a documented assessment with the top 10 operational risks and recommended fixes.
- Days 4-7: SOP write We write the initial SOP set covering every recurring task identified in the audit. Founder reviews and edits, we revise. By end of day 7 the brand has a working operations manual that did not exist before.
- Days 8-12: Shadow week The assigned operator handles tasks under review from the lead. Founder sees daily progress in Slack. The lead spot-checks every output against the SOP and flags any drift.
- Day 13: Handover review Lead, operator, and founder do a 45-minute call walking through what is now running, what stayed manual, what is queued for week 3+. Any final SOP adjustments documented.
- Day 14: Full ownership Operator owns the account day-to-day. Lead steps back to weekly review. Daily 5-line briefing email starts going out each morning.
After day 14 the engagement is in steady-state mode. We do a 30-day review, 60-day review, and a structured quarterly review with the founder.
Q3Automations we build for clients
Our default automation stack is n8n (self-hosted, no per-task fees), with Make as a fallback for simple workflows and direct Shopify webhooks where speed matters. We avoid Zapier on retainer clients because per-task pricing scales badly at our usage.
The most common automations we build in the first 90 days of a new engagement:
| Automation | What it does | Tools |
|---|---|---|
| Daily ops briefing | Pulls overnight orders, support volume, inventory alerts, app failures into a 5-line email to the founder by 8am | Shopify Admin API, Gorgias API, Klaviyo, n8n |
| Stockout auto-pause | Auto-pauses ad campaigns and product feed listings when stock hits the reorder point. Auto-resumes when restocked. | Shopify webhooks, Meta Ads API, Google Merchant Center, n8n |
| Order exception routing | Tags incoming orders with high-risk flags (gift, B2B, address mismatch, fraud signals) for the operator to triage first | Shopify Flow + n8n |
| Support draft generator | For every inbound ticket, Claude drafts a response in the brand's voice. Agent reviews and sends. Cuts average handle time by 40-60%. | Gorgias webhooks, Claude API, n8n |
| Supplier email parser | Watches the supplier inbox folder, extracts PO updates and tracking, posts to the centralized supplier tracker | Gmail API, Claude API, Notion API, n8n |
| Product description draft | For new SKUs added from supplier feeds, Claude drafts a brand-voiced description, bullet points, meta title, meta description. Human approves before publish. | Shopify Admin API, Claude API, n8n |
| Review-driven content brief | Monthly synthesis of last 30 days of reviews into a content brief covering top objections, most-mentioned attributes, and product issues to feed back to the product team | Yotpo/Stamped API, Claude API, n8n |
Every automation we build comes with monitoring: if it fails three times in a row we get a Slack alert and the failure is logged. The operator owns triage; the lead owns the fix.
Q4How we QA VA work
QA runs at three layers, each with a different cadence:
Layer 1: First-hour check-back (continuous)
New VAs and new task types: the lead reviews every output in the first hour of work and again at the end of day one. Cuts onboarding errors by roughly half compared to letting the operator run unsupervised in the first 24 hours.
Layer 2: Daily spot checks (random)
The lead pulls 3-5 outputs at random each day across the active engagements and checks them against the SOP. Any drift gets logged in the operator's review document and addressed within 24 hours.
Layer 3: Weekly QA report (structured)
Every Friday the lead writes a 1-page QA summary per active engagement: what went right, what drifted, what got fixed, what is still open. The founder receives this with the weekly performance report.
QA outputs that flag a systemic issue (not a one-off) trigger an SOP update within the same week. The change is logged with a version stamp so we can trace why a process evolved.
The escalation matrix
For any operator-level decision:
- If the SOP covers it: operator executes.
- If the SOP doesn't cover it but the precedent is clear: operator executes and logs for SOP addition.
- If the impact is over $250 or affects a customer relationship: operator pauses and pings the lead.
- If the lead is unsure or the impact is over $1,500: lead pings the founder before action.
Q5KPIs we track weekly
Every retainer engagement reports against a standard KPI set, customized per category. The default Shopify operations report includes:
Operational KPIs
- Orders processed (count, by day-of-week)
- Exception orders (count, resolution time, root cause categories)
- Stockout incidents (count, days-of-stock-remaining at risk SKUs)
- Supplier SLA compliance (on-time delivery rate per supplier)
- App stack failures (count, categorized by app)
Support KPIs (when in scope)
- First response time (median + 90th percentile)
- Resolution time (median + 90th percentile)
- CSAT (1-5 rating, with comment review)
- Ticket volume (by category)
- Reopen rate (tickets that came back after resolution)
Marketing KPIs (when in scope)
- Email and SMS revenue share (by flow vs campaign)
- Klaviyo flow performance (welcome, abandon, post-purchase, win-back)
- Paid channel ROAS (per platform, with 14-day attribution window)
- Conversion rate (storewide + top 5 products)
Reports go out every Monday by 10am client local time, covering the previous week's data. The founder reads it; the lead is on standby for the day to discuss any anomaly.
Q6AI-assisted vs human-only tasks
The split is deliberate. AI is the worker for repeatable, low-ambiguity, easily reviewable work. Humans own anything that requires judgment, brand-critical creative, or irreversible decisions.
| Task | AI does | Human does |
|---|---|---|
| Customer support reply | Drafts in brand voice | Reviews, edits if needed, sends |
| Product descriptions from supplier data | Generates full draft + meta + bullets | Reviews against brand voice, edits, approves |
| Order exception triage | Categorizes, suggests resolution path | Decides, executes |
| Supplier email parsing | Extracts structured data | Spot checks weekly |
| Review synthesis | Reads all reviews, produces themes | Reads synthesis, makes product decisions |
| Refund authorization | Recommends action | Authorizes above $50 |
| Klaviyo flow content | Drafts subject lines and body copy variants | Picks variant, approves send |
| Inventory reorder timing | Forecasts | Authorizes the PO |
| Supplier swap decision | Flags the signal | Decides and executes |
| Chargeback evidence prep | Assembles tracking and comms | Reviews, files |
| Brand voice writing (long-form) | Drafts | Heavy edit, sign-off before publish |
We do not let AI auto-publish to customer-facing surfaces. Every AI output passes through a human gate before it reaches a customer, a supplier, or anyone outside the operations layer. The gate exists because AI mistakes compound when they go live, and the cost of one bad auto-published reply is higher than the time savings across a hundred good ones.
Q7What happens if your VA disappears
A single dedicated VA is one set of hands. When that person gets sick, takes vacation, or quits, the engagement should not pause. Our continuity model:
Backup operator
Every active engagement has a primary operator and a designated backup. The backup is briefed on the account during onboarding and stays current via weekly SOP digests. They can step in within one hour if the primary becomes unavailable.
SOP-driven coverage
Because every recurring task is documented, the backup operator is not learning the account from scratch. They are executing against a written playbook. The first day of backup coverage might be 70% as fast as the primary, but the work gets done correctly because the SOP is the source of truth.
Lead operator escalation
If both primary and backup are unavailable in the same window (rare but possible), the lead operator takes over personally until coverage is restored. Lead capacity is reserved specifically for these situations.
Founder-visible continuity
The founder sees the change immediately in the daily briefing: "Today's briefing is from [backup operator] while [primary] is on planned leave through Friday." No surprise gaps, no missed touches, no need for the founder to wonder why Slack went quiet.
The honest version: we have had primary operator transitions happen mid-engagement on multiple accounts. The continuity model is what makes them invisible to the founder. SOPs are the moat.
Q8Example workflows, end to end
Three real workflow patterns we run for clients, walked through step by step. Names of specific clients omitted to protect engagement details, but the operational shape is exact.
Workflow A: Daily order exception handling
- 06:00 client local time, n8n workflow pulls last 24h of orders from Shopify Admin API.
- Each order is scored on 4 dimensions: fraud signal (Shopify's own + Signifyd if installed), shipping address validation, gift-order pattern (note text contains "gift," "wrap," etc.), and B2B classification (email domain matches commercial list).
- Flagged orders get tagged in Shopify with the appropriate label (
review-fraud,review-address,review-gift,review-b2b). - Operator opens the exception queue at 08:00, works through the flags. Most resolve in under 5 minutes each.
- Anything operator can't resolve gets escalated to the lead by 10:00.
- Daily briefing email at 08:30 includes count of exceptions handled and any escalations pending.
Workflow B: New product launch (SKU rollout)
- Founder shares the supplier sheet (CSV or Notion page) with 10-30 new products.
- Operator opens an SOP-defined launch checklist for each product.
- n8n workflow runs each row through Claude to generate a draft product description, bullet list, meta title, meta description, and primary collection assignment.
- Operator reviews each draft, edits for brand voice, approves.
- Operator publishes to Shopify (draft status), uploads images, sets variants and pricing.
- Lead does a final review against the launch checklist before products go live.
- Day-of launch: operator monitors for ad-account approval, payment processor flags, and customer questions in the first 4 hours.
Time per product without the AI draft: 35-45 minutes. With: 8-12 minutes. The AI gain compounds across catalogs of 50+ SKUs.
Workflow C: Weekly support performance review
- Sunday night: n8n pulls last 7 days of Gorgias data into a Notion database.
- Claude reads all closed tickets, produces a 1-page synthesis: top 3 issue categories, any pattern that suggests a product or policy problem, any agent reply that drifted from brand voice.
- Monday 09:00: lead reviews the synthesis, drafts the founder's weekly support summary, includes specific recommendations.
- Monday 10:00: founder receives the summary alongside the broader weekly operations report.
- Any action items (policy change, product page fix, SOP update) are logged in the engagement's open-items list with an owner and target date.
Want to see the version of this for your store?
Discovery call covers your current operational state and how the same playbook would apply to your specific Shopify setup. 30 minutes, no pitch.