Built by an ecom marketer, for ecom marketers
Turn your Shopify customer export into a Meta value-based audience CSV.
Drop in your Shopify customers_export.csv and get a Meta-ready file in seconds. Phone numbers normalized with country codes, states mapped to full names, total spend included as the audience value. Files are processed in memory, never stored — straight to your downloads folder.
Seconds, not spreadsheetsWhat used to be a 30-min Excel job, done in one upload.
Privacy-firstFiles processed in memory. Never written to disk or logs.
Ready to uploadOutput matches Meta's value-based custom audience template.
What it actually does
- Phone normalizationDetects already-international numbers (kept as-is) and prepends the right country code for local numbers, using the customer's billing country.
- State and province mappingUS states pass through as 2-letter codes. Every other country gets the full province name Meta requires (England, Bayern, Île-de-France, and so on).
- Audience valueShopify's Total Spent column is dropped into Meta's value field for value-based lookalikes.
- Header remappingOutputs Meta's exact header set: email, phone, fn, ln, zip, ct, st, country, value, with placeholders left blank where Shopify has no data (madid, dob, gen, age, uid).
FAQ
Do you store my customer data?No. The CSV is parsed in memory on a serverless function, converted, and streamed straight back to your browser. We never write the file to disk and we don't log row contents.
Why is the free tier limited per IP?To stop abuse without forcing you to sign up. Three small free conversions per network is enough to verify it works on your real data, then unlock unlimited rows for $5.
What does Meta do with the value column?Meta uses purchase value to build value-based lookalike audiences — they bias the lookalike toward customers who spend more, which usually outperforms a flat customer-list lookalike.
Why are some phone numbers dropped?Meta requires country codes. If a customer's phone number isn't already international and we can't infer their country code from the billing address, we leave the phone field blank rather than send something invalid.
Will this work for non-Shopify stores?Right now it expects Shopify's standard customer export columns. If you'd like other source formats supported, get in touch.