Free Tool ยท Klaviyo + Google Sheets
Klaviyo's dashboards are fine until you need week-over-week trends, custom conversion columns, or one sheet your whole team can pivot on. This template pulls campaign and flow performance, email and SMS list growth, and any conversion metric you choose into Google Sheets on a schedule โ no manual exports, no engineering ticket, no third-party connector fees. Setup takes about 10 minutes.
Get It
The whole template is two Google Apps Script files โ everything runs inside your own Google account against your own Klaviyo API key. Nothing is sent anywhere else, and re-running never duplicates rows (all writes are upserts).
Setup ยท ~10 Minutes
Config.gs first, then Klaviyo.gs โ and paste in the downloaded contents.KLAVIYO_API_KEY with a Klaviyo private key. It needs Read access to Campaigns, Flows, Metrics, Profiles, Lists, and Segments.klaviyoLogAccountInfo from the editor's function dropdown (authorize when asked). The log prints every metric and list in your account with its ID โ everything the next step needs.Config.gs: pick a base metric, list the conversion metrics you want as columns (orders, signups, cancellations โ anything Klaviyo tracks), and optionally your SMS list. Every field is commented, and the script tells you exactly what's missing if you skip something.Raw_Campaign (with a Campaign Message ID header) and Raw_Flow (with Day + Message ID) โ every other column auto-creates on first run, growth tabs need nothing. Run klaviyoWeeklyPull once to test, then add a time-based trigger to run it daily or weekly.klaviyoFullRefresh once โ it pulls 365 days in 60-day chunks and manages Apps Script's execution limits by itself. Kick it off and let it finish.Why a spreadsheet?
Because every lifecycle question starts with "pull the numbers."
Send-time tests, flow vs. campaign revenue mix, unsub spikes after a template change, list growth against paid spend โ they all need raw daily data somewhere you can pivot, chart, and share. This gives you that layer for free, in a tool your whole team already uses.