Taolilife case study: a one-product dried peach store in Taiwan, 38 paid orders and still losing money on ads
Published · Updated
TL;DR: Taolilife is a dried-peach web shop that RedClaw owns and runs in Taiwan. It sells one product and went live on 4 August 2026, the same day we did the keyword research and wrote the spec. By 7 October 2026 it had 38 paid orders worth NT$35,279 (about USD 1,140). We spent USD 1,309.76 on Meta ads, which puts Meta-attributed ROAS at roughly 0.78 by our own estimate, so the store is still losing money on paid traffic. This page covers how we got there: two payment-gateway switches, a checkout that silently broke for four days, and Meta reporting almost twice the purchases we actually received.
Some Taiwan context first
If you have never sold online in Taiwan, three things on this page need a quick explanation.
- ECPay (綠界) and NewebPay (藍新) are local payment gateways. A small independent shop applies to one of them to take credit cards, bank (ATM) transfers and payments at convenience-store counters. Each gateway reviews your website before it lets you collect money, and that review is where we lost the most time.
- Convenience-store pickup is a normal way to ship small parcels here. The buyer picks a 7-Eleven or FamilyMart near them at checkout, and the parcel waits there. ECPay covers the four big chains; a 7-Eleven parcel costs us NT$65.
- LINE is the default messaging app in Taiwan, so our order notifications, order lookup and reviews run through a LINE Official Account rather than email.
Store facts
| Item | Item |
|---|---|
| Product | Dried Lalashan peaches, one SKU. We are a distributor; the manufacturer holds the food-business registration |
| Live since | 4 Aug 2026 (research, spec and launch on the same day) |
| Stack | Next.js on Vercel, Firestore, Cloudflare DNS. GTM, GA4, Meta Pixel and server-side Conversions API; purchase events are sent only from the payment gateway's callback |
| Payments | Shared NewebPay account → our own NewebPay application (stuck in document requests) → ECPay from 31 Aug 2026 (cards, ATM, convenience-store payment codes, Apple Pay and more) |
| Shipping | ECPay convenience-store pickup (four chains); home delivery through Taiwan Post since 1 Oct 2026 |
| Customer channel | LINE Official Account with a mini web app for order status and reviews |
How long did it take to get from idea to first order?
| Date (2026) | What happened |
|---|---|
| 4 Aug | Keyword research (197 Taiwan keywords), spec signed off, domain live. All 14 routes returned 200 the same day |
| 5 Aug | The real packaging label arrived. 40 claims on the site didn't match it; we rewrote them that day |
| 9 Aug | We decided to collect payments through the NewebPay account of our other store, MaoMuse |
| 15 Aug | First 100 packs delivered; first Meta campaign approved at USD 30/day |
| 16 Aug | First real paid order, NT$750 |
| 17–19 Aug | NewebPay audited the shared account and told us to separate the two brands. Taolilife stopped using it |
| 19–24 Aug | Our own NewebPay application got two rounds of document requests; ECPay rejected our non-card payment application |
| 22 Aug | All four payment applications in progress were stuck in review at the same time |
| 24 Aug | Added the owner's name, phone and business address to the site, which both gateways had flagged |
| 28–29 Aug | ECPay approved card payments, and a "merchant key not found" error that had dragged on for over a month was finally fixed |
| 31 Aug | Payments and shipping switched to ECPay; Meta ads back on |
| 4 Sep | Found the convenience-store map broken at checkout: 21 checkout starts and zero orders since 31 Aug. Fixed the same day |
| 10 Sep | Referral codes, add-ons and group-buy features launched |
| 20–26 Sep | Best week so far: 27 paid orders in 7 days |
| 27 Sep | Last Meta spend, and the last order to date |
| 29 Sep | Google Ads Search, Shopping and Demand Gen launched |
| 30 Sep | Demand Gen paused after NT$1,899, 778 clicks, zero orders |
| 1 Oct | Home-delivery labels for Taiwan Post can be created inside LINE |
What did the store sell, and what did it spend?
Data pulled on 7 October 2026. Orders come from our own order database; ad spend comes from RedClaw's daily Meta sync.
| Metric | Value |
|---|---|
| Paid orders | 38 |
| Paid revenue | NT$35,279 |
| Aug / Sep / Oct (to 7 Oct) | 6 orders NT$5,999 / 32 orders NT$29,280 / 0 |
| Average order value | NT$928 |
| Shipped | 37 of 38 |
| Meta ad spend (15 Aug – 27 Sep) | USD 1,309.76 |
| Purchases reported by Meta | 65 |
| Paid orders in our database with a Meta source | 34, worth NT$31,550 |
| ChatGPT ads (27–29 Sep) | USD 171.98, 207 clicks, 0 orders |
| Google Demand Gen (29–30 Sep) | NT$1,899, 778 clicks, 0 orders |
| Google organic clicks per month (Aug → Sep) | 92 → 157 |
| Organic impressions for the main product keyword, "dried peach" in Chinese (1 Aug – 27 Sep) | 0 |
| Mobile LCP | 13.1 s → 2.2 s |
| Lighthouse performance, mobile | 39 → 94 |
Our estimates (we used 31 TWD per USD, the fixed rate in RedClaw's sync):
| Estimate | Formula | Result |
|---|---|---|
| Meta spend in TWD | 1,309.76 × 31 | ≈ NT$40,603 |
| Ad cost per Meta-sourced order | 40,603 ÷ 34 | ≈ NT$1,194 (≈ USD 38.5) |
| Meta-attributed ROAS | 31,550 ÷ 40,603 | ≈ 0.78 |
| All revenue ÷ Meta spend | 35,279 ÷ 40,603 | ≈ 0.87 |
Our pre-launch financial model (a projection) put break-even at about NT$248–288 per order, or a ROAS of 2.6–3.0. We are nowhere near that yet.
Where did the time and money go?
1. The supplier's spec didn't match the actual label
- What happened: we only saw the physical pack the day after launch. "No added sugar, 100% peach, 100 g, 12-month shelf life" was all wrong. The label said added sugar (74.1 g per 100 g), 150 g, 6 months.
- Cost: 40 passages to rewrite, one of them in an article about blood sugar. Left as it was, that would have been a false claim.
- Fix: rewrote everything from the label. Rule since then: no ingredient or spec copy until we've seen the real label.
2. Two brands on one payment account fail together
- What happened: to move fast, Taolilife took payments through our other store's NewebPay account. NewebPay audited it and told us to split the brands.
- Cost: from mid to late August Taolilife had no stable way to take payment, while the first campaign kept spending until 21 Aug.
- Fix: one gateway account per brand. No sharing.
3. Every payment rejection pointed back at the website
- What happened: both gateways said the site was missing the owner's name, phone and business address. ECPay also required the phone or email on the site to match the one used for seller verification, and ours didn't. (ECPay's own review criteria say the contact details on your sales page must match your registration.) NewebPay wanted proof of purchase from our supplier, a small farm that isn't registered and can't issue receipts.
- Cost: on 22 August all four applications were stuck at once.
- Fix: added the missing details and made the contact info match the gateway records word for word. For supplier proof we used facts that can be checked, such as the address printed on the pack matching the supplier's own website.
4. "Approved" did not mean we could take money
- What happened: ECPay kept returning "merchant key not found". From the first report to the fix took more than a month.
- Cost: card payments were approved on paper but checkout still didn't work.
- Fix: ECPay's own hosted payment link failed the same way. We used that as proof the problem was on their side, and it was fixed on 29 August.
5. Switching gateways broke checkout for four days
- What happened: when we moved to ECPay, the convenience-store map parameters on the front end weren't updated.
- Cost: 21 checkout starts and zero orders between 31 Aug and 4 Sep, with Meta ads already running again.
- Fix: patched on 4 September, together with a shipping-type field that the same missed change had cut down to 2 characters.
6. Meta reported 65 purchases; we could match 34
- What happened: Meta's dashboard counted 65 purchases. Our database had 34 paid orders with a Meta source.
- Cost: going by the dashboard, cost per order looks half of what it is, and you scale the wrong campaigns.
- Fix: we judge ads only on our own paid orders. Early orders didn't store UTM parameters, so we couldn't tell which ad brought in the very first sale; we added that later.
7. Discovery traffic browses but doesn't buy
- What happened: Google Demand Gen sent 778 clicks in a little over a day.
- Cost: NT$1,899 and zero orders. The real funnel was 497 product views, 9 add-to-carts, 14 checkout starts, 0 orders. Add-to-cart rate was 1.8%, against 10–20% during our Meta campaigns.
- Fix: paused on 30 September. Google now runs only Search and Shopping.
8. Chinese web fonts slowed the site, and the content attracted the wrong searches
- What happened: the Chinese web font made up 76% of homepage transfer, and mobile LCP was 13.1 s. Separately, organic impressions grew on pages like a fruit calendar and shipping costs, while the main product keyword got zero impressions in two months.
- Cost: a slow homepage, and search visitors who mostly weren't looking to buy dried peaches.
- Fix: switched to system fonts. Homepage transfer went from 2,133 KB to 445 KB and LCP to 2.2 s. The content problem isn't solved yet (see below).
How is the store doing now?
- No new orders since 27 September. Meta spend stopped after 27 September, and October so far has zero orders.
- Paid traffic hasn't broken even. Meta-attributed ROAS is about 0.78 and ad cost per order is about NT$1,194, against an average order of NT$928. A single product with an order value under NT$1,000 can't run on paid acquisition alone.
- Google Search and Shopping have run since 29 September. We haven't calculated spend or real ROAS after 1 October yet; this page will be updated when we do.
What we're working on next (not finished; numbers will be updated):
- Calculate real ROAS for Google Search and Shopping from our own orders (those carrying a gclid or UTM), not from platform reports.
- Use the referral codes, group-buy feature and LINE account we already built to bring past buyers and our 80 sign-ups back for a second order, so the first order's ad cost can spread across two.
- Add content for buying-intent searches like "dried peach" to the product page, and submit it to Google by hand. Pages we submitted manually got recrawled; pages we didn't submit weren't.
What this means for your store
- Fix your site's disclosures before you apply to a payment gateway. Owner, phone, business address and refund policy, matching the gateway records word for word. This alone cost us two weeks. It's the first thing we check for clients, see our e-commerce coaching service.
- Work out your cost per order before you leave a marketplace. On our numbers, a NT$928 order on Shopee Taiwan would pay about NT$130 in platform fees (our estimate, standard seller, free-shipping program option 1, card payment). The same order on our own site cost about NT$1,194 in Meta ads. A marketplace is often the cheaper way to get a first order; your own site pays off once you have repeat buyers, a list or organic search. Fee rates are on Shopee's seller help page.
- Judge ads on your own orders, not the ad platform's dashboard. Ours over-reported by almost double. Our other two stores are in the MaoMuse case and the ONAÏ case, and everything is collected in our e-commerce hub.
FAQ
- Is Taolilife your store or a client's?
It's ours. Every number comes from our own order database and ad accounts, losses included.
- How did you get a ROAS of 0.78?
We converted Meta spend of USD 1,309.76 at 31 TWD per USD (about NT$40,603), then divided the NT$31,550 of paid revenue from orders with a Meta source by it. That's our own estimate, not the figure in Meta's dashboard.
- Can a foreigner sell like this in Taiwan?
We haven't done it as a foreigner, so we can't say from experience. ECPay's official pages describe registration with a Taiwanese ID or a Taiwanese company tax number and don't say whether foreign residents can apply. Check with ECPay directly before you plan around it.
Want to know which stage your store is stuck at? Send us your URL and last month's order count on Telegram: https://t.me/eric16888999