Of the five mobile measurement partners (MMPs) checked, Linkrunner and Singular state LTV and ROAS reporting on their own pages, Linkrunner shows cohort revenue and ROAS up to D180 beside spend, and Adjust, Airbridge and AppsFlyer need a trial check. Adjust documents cohort analysis to D120 without naming ROAS or LTV. Airbridge documents ROAS, ARPU and predictive LTV without mentioning cohorts. We could not read AppsFlyer's reporting pages. Whether you still need a BI tool depends on three checks: can you group by campaign, can you choose the cohort start, and can you read later-day ROAS without exporting? Linkrunner cohorts always start at install; grouping ROAS by first purchase or sign-up is not supported.
Disclosure: this post is written by the Linkrunner team. Competitor details come from each vendor's own pages, read on 10 Nov 2026. Where a page did not state something, we say so rather than guess.
What is a cohort LTV and ROAS report?
Cohort LTV and ROAS report: a report that groups users by when or how they were acquired (install date, campaign, channel) and shows cumulative revenue per user, and revenue divided by spend, at set days after install.
- Cohort analysis is the grouping step. Users who installed on the same day, or through the same campaign, are followed together.
- Lifetime value (LTV) is revenue per user in that cohort, accumulated over time.
- Return on ad spend (ROAS) is that revenue divided by what you spent to acquire the cohort.
- Cohort ROAS is not calendar ROAS. Cohort ROAS credits revenue back to the day users were acquired. Calendar ROAS counts whatever revenue arrived in the period. They answer different questions, as the entry on cohort vs calendar ROAS explains.
Platform numbers can also differ from your MMP because of window and counting definitions. The guide to why Meta ROAS and MMP ROAS don't match covers that.
What should a built-in cohort report do so you can skip the BI tool?
Use five checks. A report that passes all five replaces most weekly exports.
- Group by campaign, creative and channel, not only by install date.
- Check the cohort start. Install date, first purchase and sign-up give different answers, so confirm which one each tool uses.
- Read later windows in the dashboard. D1 and D7 are common. Payback for subscription or finance apps often needs D30 or beyond.
- Join cost from ad networks, so ROAS is calculated in the tool, not typed in.
- Export or API for the rest. No dashboard covers every question, so raw data access is the escape hatch.
Which attribution tools show cohort LTV and ROAS by campaign?
Linkrunner is listed first because we build it. Cells say "not stated" where the vendor page read did not say.
| Tool | Cohort grouping (as stated) | LTV and ROAS in dashboard | Longest window stated | Export or API |
|---|---|---|---|---|
| Linkrunner | Installs by channel and install day; saved user cohorts | Cohort revenue and ROAS beside spend | D180 | CSV, API and webhooks |
| AppsFlyer | Cohort and Retention dashboard | Check vendor page | Check vendor page | Check vendor page |
| Adjust | Cohort analysis with a Dimension picker | Revenue metrics need a revenue type; confirm ROAS and LTV in Datascape | D120 | Check vendor page |
| Singular | Cohort reporting described; grouping not stated | ROAS, CAC and LTV reporting | 35-day cohorts on iOS | Not stated |
| Airbridge | Not stated | Revenue Report with ROAS and ARPU; predictive LTV described | Not stated | Not stated |
Read the table as a starting point for a trial, not a verdict. Vendors change reports often.
1. Linkrunner
- What the dashboard shows: retention by channel and install day (classic and cumulative at D1, D7, D14, D30; rolling at D1 and D7), per its retention docs. On the analytics page, LTV is shown per campaign with ROAS read next to campaign spend, and cohort revenue and ROAS go up to D180. Cohorts always start at install; grouping ROAS by first purchase or sign-up is not supported.
- Revenue sources: in-app purchases sent through the SDK or server API, plus RevenueCat subscriptions.
- Creative level (Creatives tab, Meta and Google): cohort ROAS can be shown at creative level; see our creative-level ROAS guide.
- Exports: unrestricted CSV, API and webhook exports with no export fees, and warehouse delivery to BigQuery, Redshift or Snowflake on request.
- Price: Free covers the first 25k attributed installs with every feature. Growth is postpaid per attributed install, from Rs1.20 down to Rs0.80 for Indian teams (USD: $0.012 down to $0.007).
- Limit: cohorts start at install only. For a first-purchase or sign-up cohort, export the data and group it yourself.
- Best for: teams that want cohort ROAS by campaign inside the dashboard, and want raw data access at no extra cost.
2. AppsFlyer
- What we could read: AppsFlyer has a Cohort and Retention dashboard. Its help centre blocked automated reading, so we make no claims about windows, API access or plan gating.
- How to check: open the dashboard in a trial and test the five checks above, especially whether ROAS and LTV by campaign are visible without the API.
- Best for: teams already on AppsFlyer who want to confirm what is included before exporting.
3. Adjust
- What we read: the cohort analysis page lets you choose a metric, a dimension and Days, Weeks or Months granularity, with periods up to D120. Revenue metrics need a revenue type set first.
- What the page did not say: it did not name ROAS or LTV, so confirm those metrics in Datascape before relying on them.
- Best for: teams that need long cohort windows and are comfortable configuring reports.
4. Singular
- What we read: Singular's attribution page says ROAS, CAC and LTV reflect spend matched to conversions, and mentions 35-day cohorts for iOS.
- Not stated: retention features, predictive LTV and export limits were not on the page we read.
- Best for: teams that want cost and ROI reporting across many networks in one place.
5. Airbridge
- What we read: the help centre describes a Revenue Report that tracks metrics such as ROAS and ARPU, and describes predictive LTV (pLTV) for building campaigns around expected revenue.
- Not stated: cohort start options and minimum cohort sizes.
- Best for: teams that want a predicted LTV signal early, once they confirm how it is calculated.
For a wider vendor comparison, see the best MMPs in 2026.
When is a built-in report not enough?
A dashboard still falls short in a few cases:
- Billing-system revenue. If net revenue lives in Stripe, a store report or your own ledger, you need an export or API to join it. Linkrunner's data export and reporting API cover this.
- Data retention. Data retention varies by plan; check the pricing page for current limits.
- Web and app together. Linkrunner also attributes web traffic (Web SDK, in beta), but app and web figures sit in separate views. Do not add an app install to a web visitor.
- Gross versus net. Decide whether you want gross or net revenue before comparing tools.
If you do build a spreadsheet, keep it to one tab and build it around a weekly performance dashboard framework.
How do you read cohort ROAS without fooling yourself?
Most "wrong" ROAS numbers are definitions first and faults second. In Linkrunner support cases over recent months, the usual cause of a gap against Meta or Google was a window or counting difference: 7-day click versus 30-day, cohort versus in-period, or view-through. Real setup faults were the minority.
Use this order:
- Fix the attribution window first. Compare 7-day click with 7-day click, not with 30-day.
- Compare like with like. Cohort ROAS against cohort ROAS, not against a period total.
- Wait for the cohort to mature. A D30 figure is only complete once the cohort is 30 days old. Filter by install date and end the range at least 30 days ago.
- Separate gross and net revenue. Refunds and store fees move the number.
- Set a sample-size floor. A cohort of a few dozen users swings wildly, so ignore it.
More technique is in the six cohort analysis techniques and the performance marketer's guide to cohort analysis.
FAQ
Do I need predictive LTV, or is actual LTV enough? Actual LTV is enough for most decisions once a cohort is a few weeks old. Predictive LTV helps when you must decide on a campaign within days. Treat it as an estimate and check it against actuals.
How long until a cohort is readable? A D7 figure is readable after a week and a D30 figure after a month. Early readings move as late purchases arrive, so avoid cutting budgets on D1 alone.
Can I join revenue from my billing system? Yes, with an export or API. Linkrunner offers CSV, API and webhook exports with no export fees. Check the same for any other tool before you commit.
Does it include web? Linkrunner is a mobile and web attribution platform; web attribution is in beta and reported separately from app data. For other vendors, check their pages.
Which tool should I start with? Pick two, run the five checks on a real campaign for a week, and compare against your spreadsheet. Request a demo from Linkrunner to test it on your data.
