Comparison
Refik and Zendesk, read on the same day.
One is billed per agent seat and runs wherever your support team already works. The other is billed per conversation and only exists inside a Shopify storefront. That is the whole comparison, and the rows below are the evidence for it — each one dated, each one from a page you can open yourself.
Method
Two sides, two dates, and an empty cell that means something.
The right-hand side of every row was read out of Zendesk’s own pages on 10 October 2026 — the pricing page and the home page, nothing else, no analyst report and no review site. The quotes are theirs, word for word. The left-hand side was read out of our own source code on 4 October 2026, and the plan figures come from the pricing page in this same directory, which fails its build if a price in the code changes without the page changing with it.
An empty cell is a third state and it is on purpose. It does not mean “they do not have it”. It means we did not read it on that day, so printing a dash there would turn a gap in our reading into a claim about their product. Where a cell is empty, the reason is written underneath.
Two things are missing from this page by design. There is no verdict row and no score: a seat price and a conversation price are not the same unit, and dividing one by the other would produce a number that looks like a measurement and is not one. And there is nothing here about how well either assistant answers a shopper, because we did not measure that on either side.
The rows
What each side charges for, and where it runs.
Read the first two rows together. They are the reason the rest of the table looks the way it does: a seat price scales with how many people answer, a conversation price scales with how many shoppers ask. A shop with one owner and a busy storefront and a shop with eight agents and a quiet storefront will come out on opposite sides of that line.
Zendesk read from zendesk.com/pricing and zendesk.com; Refik read from this repository and the pricing page.
| What the row measures | Refik | Zendesk |
|---|---|---|
| What you are billed for | ||
| The billing unit | Conversations in a billing period. Three bands: 300, 1,000 and 3,000. | Agent seats. “Zendesk pricing is primarily seat-based (per agent, per month) with plan tiers that include different features.” |
| Entry tier, list price in USD | Starter, $39 a month or $390 a year, for the whole shop. | “$19 agent/month paid yearly”, per seat. |
| Upper tiers, list price in USD | $99 and $249 a month; $990 and $2,490 a year. | “$55 agent/month paid yearly” and “$115 agent/month paid yearly”. |
| Charges on top of the subscription | On monthly billing, $0.15, $0.12 or $0.10 for a conversation above the band, capped at one band’s worth. On yearly billing, none. | “Usage-based features: Certain features like App Builder, Action Builder and Voice are billed based on consumption exceeding applicable plan allowances.” |
| Billing currencies | “Supported currency: Currently, Zendesk supports USD, EUR, GBP, and BRL.” | |
| Free trial | 14 days on every plan, with a conversation allowance scaled to the plan. | |
| Where it runs | ||
| Platforms it connects to | Shopify only. The catalogue, the policies and the order lookups all come from one store’s Admin API, and there is no second platform in the code. | On the three pages read that day, “Shopify” appeared no times. The same reader found the word “Zendesk” on all three, so it was not blind. |
| Channels a shopper can use | The web storefront, and only that. WhatsApp, Instagram, Messenger, email and SMS are not built, and that is written on the integrations page rather than left to be discovered. | |
| How each side describes itself | A shopping assistant on the storefront: it recommends, it looks up an order, and it hands a hard question to a person. | “Move beyond deflection with AI agents that resolve issues end-to-end.” |
- Billing currencies, our cell is empty. Our pricing page prints USD. What a merchant is actually charged in runs through Shopify’s billing, and we did not read that on 4 October, so there is nothing honest to put in the cell.
- Free trial, their cell is empty. The two pages read that day did not state a trial length. That is a gap in our reading, not a statement about their product.
- Channels, their cell is empty. Their channel list was not among the pages read. Ours is written out because a missing channel is the kind of thing a shop finds out after it has paid.
- Neither side’s answer quality is here. Not theirs, not ours. Measuring it would need the same shoppers asking the same questions of both, on a real catalogue, and that has not been done.
The difference that matters
A seat price and a conversation price answer different questions.
A seat price asks how many people you need on the other end. It is the right unit when the work is a queue of tickets that humans pick up, and it is why a help desk charges that way: the cost follows the team. A conversation price asks how many shoppers started talking. It is the right unit when nobody is meant to pick anything up — when the assistant answers, and a person only appears for the questions it refuses to guess at.
That is also why the two are not really alternatives for the same job. A shop that answers email, phone and social messages from several agents has a help desk problem, and a storefront assistant does not solve it. A shop whose owner is the only person answering, and whose pain is the same nine questions arriving before someone decides to buy, has a storefront problem — and buying seats for it means paying for a queue nobody is standing in.
There is a case where both are true at once, and it is common: a shop with a help desk already in place that wants the storefront to stop sending it the easy questions. For that case the handover matters more than the price, and here is the honest state of ours: the server can open a ticket in one help desk, Zendesk is not that one, and the settings screen for choosing a target is not built. So a shop on Zendesk cannot wire the handover up from our panel today. The integrations page lists what is connected and what is not, in the same words.
Who each one fits
Where we would tell you to buy the other one.
A help desk fits you if support arrives through more than one door — email, phone, a social inbox — and more than one person answers it. If you need a shared queue, assignment, service-level reporting across channels, or anything that lives after the sale for weeks, that is a help desk’s job and not ours. Our channel list is one channel long and we are not going to pretend otherwise.
We fit you if the questions that cost you money arrive before the order exists: which of these two is right for me, is this in stock in my size, where is the order I placed on Friday, can I send this back. Those are storefront questions, they arrive on a product page, and answering them needs the catalogue and the policies of one shop rather than a ticket queue.
Neither of us fits you if what you actually need is a person. Both products put a human at the end of the path; ours does it by opening a handover and telling the shopper a person will pick it up, and it is told never to say a refund is approved. If there is nobody to pick it up, no assistant on either side of this table fixes that.