How to Track LTV by Acquisition Channel in Ecommerce
by Trivas.ai
|
7 min read
Sep 08, 2026
Blended LTV is a comfortable number. It's also mostly useless for spend decisions. If you're running Meta, Google, and TikTok campaigns alongside email and organic, one average LTV figure smashes together customers who buy once and never come back with customers who reorder five times over a year. Figuring out how to track LTV by acquisition channel ecommerce brands actually need means pulling those channels apart, not averaging them together.
Why Blended LTV Hides Your Best (and Worst) Channels
Say your blended 180-day LTV is $140. Feels fine. But that number could be hiding a Meta cohort that churns after one order and averages $70, propped up by an email and organic cohort that reorders four or five times and averages $220.
Average those two together and you get a number that describes neither channel accurately.
Most brands don't catch this because they optimize acquisition spend on CAC and ROAS alone. Both metrics reward whatever channel acquires the cheapest customer, regardless of whether that customer sticks around. A channel with a $25 CAC and a 3x ROAS on the first order looks like a winner in the ad dashboard. If that same customer never buys again, you've just paid to acquire a one-time transaction, not a customer.
The real problem is a data problem: connecting first-touch or last-touch acquisition data to what actually happens downstream at 90, 180, and 365 days. That's the gap this post is here to close.
What You Need Before You Can Calculate LTV by Channel
Before you touch a formula, you need three data sources actually talking to each other:
Order history with customer IDs, pulled from Shopify or WooCommerce, going back at least a year
Ad platform spend and attribution data from Meta, Google, and TikTok
Session-level or UTM-based first-touch data from GA4, so you know which channel actually brought the customer in the door
The piece people skip: you need a stable customer identifier, usually email or a customer ID, that persists across every order that customer ever places. Without it, you can't tie a repeat purchase six months later back to the channel that acquired them in the first place.
Here's the common failure point. Most brands can calculate CAC by channel in about ten minutes, because that's just spend divided by conversions inside the ad platform. LTV by channel is harder because it requires joining attribution data to lifetime order history, and most attribution tools stop tracking a customer the moment the first order closes. If your stack doesn't join those two datasets, you don't have an LTV problem. You have a data-joining problem.
Step 1: Define Your LTV Window and Formula
Pick a fixed window. 30-day, 90-day, 180-day, or 365-day LTV. Don't chase "infinite" lifetime LTV as your primary metric, it takes years to mature and tells you nothing useful about the budget decision you need to make this week.
The basic formula:
LTV = Average Order Value x Purchase Frequency x Gross Margin % (over your chosen window)
If you're an early-stage brand without enough order volume to model frequency reliably, a simpler cumulative revenue-per-customer approach works fine: just sum total revenue per customer over the window, grouped by acquisition channel.
One thing that trips people up: revenue LTV and margin-adjusted LTV tell different stories. A channel that drives customers who use heavy discount codes can post impressive revenue LTV while actually being your least profitable channel once you strip out the margin those discounts ate. Always run gross margin adjusted LTV when comparing channels against each other. Revenue LTV alone will lie to you.
Step 2: Tag Every Customer with Their Acquisition Channel
Use first-touch attribution: tag each customer with whichever channel drove their first purchase, not whatever channel shows up on order three or four. First-touch is what tells you which acquisition spend is actually building your customer base, versus which channel is just catching people who were already going to buy.
Three practical tagging methods, layered together:
UTM parameters on every paid ad link, captured at first session
Shopify order source / referring site data, which fills gaps UTMs miss
Post-purchase surveys for channels that don't leave a clean digital trail, like TikTok organic, influencer seeding, or podcast ads
The messy part is multi-touch customers. Someone sees a TikTok ad, ignores it, then converts two days later by clicking a branded Google search result. If you attribute that sale to branded search, you're crediting Google for a customer TikTok actually created. Pick a consistent rule, first paid touch is usually the most defensible, and apply it the same way across every channel. Consistency matters more than perfection here.
Step 3: Cohort Customers by Acquisition Month and Channel
Now build a cohort table. Rows are acquisition month plus channel, something like "March 2024, Meta" or "March 2024, Email." Columns are cumulative revenue per customer at day 30, 90, 180, and 365.
This is where the real differences show up. You might find your email-acquired customers hit $180 in cumulative LTV by day 90, while your Meta-acquired customers from the same month plateau around $95 and never move much past that.
That's not a coincidence, and it's not something a single blended number would ever surface.
The cohort table is also what turns LTV from a static, backward-looking number into a trend. As you shift creative, change offers, or test new audiences, you can watch each channel's repeat purchase curve shift in near real time, instead of finding out a year later that a channel quietly stopped producing repeat customers. This is the same logic behind good BI reporting: raw numbers matter less than watching how they move.
Step 4: Combine LTV with CAC to Get Real Payback Periods
Once you have cohort LTV, divide it by CAC (blended or platform-reported) to get an LTV:CAC ratio per channel. This is the number that should actually drive budget decisions, not ROAS on its own.
Here's a concrete example. Channel A: $40 CAC, $95 90-day LTV. That's a 2.4x ratio, and it looks perfectly healthy sitting next to a solid ROAS. Channel B: $60 CAC, $180 90-day LTV. Higher CAC, but a 3x ratio, and a meaningfully longer runway of repeat revenue behind it.
If you're only looking at CAC or ROAS, Channel A wins every time, it's cheaper. But Channel B is the better long-term bet. This is exactly the kind of comparison a ROAS calculator can help you sanity-check, since ROAS alone tends to favor the cheap, low-LTV channel by design.
Once you see this clearly, budget allocation stops being about chasing the lowest CAC channel and starts being about funding the channels with the strongest payback curve, even if they cost more upfront.
Where Manual Spreadsheets Break Down (and What to Automate)
Most teams try this in spreadsheets first. Export Shopify orders, export ad platform spend, export GA4 sessions, then join everything by hand with VLOOKUPs and a lot of patience.
It works, for about a month. Then someone changes an attribution window, a new UTM convention shows up, or the team adds TikTok as a channel, and the whole spreadsheet needs to be rebuilt. Most brands we talk to are spending three to five hours a week on this and still distrust the output.
Trivas pulls order data from Shopify and WooCommerce, ad spend from Meta, Google, TikTok, and Reddit, and funnel data from GA4, into one Redshift-backed warehouse. Because everything's joined on the customer level from the start, LTV-by-channel cohorts update on their own instead of getting rebuilt from scratch every month. That's the difference between BI reporting that's actually current and a spreadsheet that's accurate as of three weeks ago.
The AI Wingman layer sits on top of that and flags shifts as they happen, like a channel's 90-day LTV cohort dropping below a set threshold, instead of you finding out during a quarterly review when the damage is already three months old.
Turn LTV-by-Channel Data into a Weekly Habit
Four steps, in order: define your LTV window, tag every customer by first-touch acquisition channel, build cohort tables by acquisition month and channel, then combine LTV with CAC to get real payback periods per channel.
Paid channels move fast, so review Meta, Google, and TikTok cohorts weekly. Email, organic, and affiliate move slower and can hold a monthly cadence, since the spend decisions attached to them aren't as time-sensitive.
If you're still doing this in spreadsheets and losing an afternoon every time attribution rules shift, it might be worth seeing how Trivas automates the whole cohort pipeline across your existing Shopify or Amazon setup and ad stack. Or just keep an eye on our blog for more on making channel data actually usable.
Content author and contributor at Trivas.ai, sharing insights on e-commerce analytics, business intelligence, and data-driven strategies to help businesses grow.
Continue Reading
explore more insights
Media Mix Modeling for DTC Brands: A No-BS Beginner's Guide