Connected with Orphex Recommended
The skill reads your connected accounts for the right dates. Nothing to export or upload.
Connect freeCompare acquired-customer cohorts at a common observed horizon using defined revenue, retention, and CAC; separate observed value from lifetime forecasts.
When comparing acquired customer value and repeat behavior at the same observed age.
“Compare customer value and CAC across our acquisition cohorts at the same customer age.”
A horizon-aligned cohort-value review with CAC, observed repeat behavior, maturity coverage, and explicit lifetime/profit limits.
| Cohort | Common observed horizon | Net revenue / acquired customer | CAC | Observed revenue-to-CAC ratio | Repeat-customer fraction |
|---|---|---|---|---|---|
| June | 60 days | $8,000/100 = $80 | $3,000/100 = $30 | 2.6667 | 50/100 = 50.00% |
| July | 60 days | $7,000/100 = $70 | $3,000/100 = $30 | 2.3333 | 40/100 = 40.00% |
July's observed 60-day revenue per acquired customer is $10 lower (−12.50%). June's $9,000 at 90 days must not be compared with July's $7,000 at 60 days as equal-horizon lifetime value. This is observed 60-day value, not a lifetime forecast or profit LTV; CAC ratios do not include service/product costs.
Membership and elapsed maturity are supported by the fictional export guarantee. Without per-customer age coverage in an actual export, alignment would remain unverified. Next: compare acquisition mix, offers, returns and repeat ordering at the same horizon. No projected lifetime multiple, payback date, or bid-target change was invented.
Fictional data. An illustration of the method, not a customer result.
The skill reads your connected accounts for the right dates. Nothing to export or upload.
Connect freeAttach a CSV with the columns below. The template shows the expected shape.
cohort_idRequiredcurrencyRequiredcustomersRequiredobserved_daysRequiredcommon_horizon_daysRequiredrevenue_at_common_horizonRequiredrevenue_to_dateOptionalacquisition_costRequiredrepeat_customers_at_common_horizonOptionalSupply your objectives, conversion definitions, currency, constraints, and approved brand facts once, then reuse the profile across reviews. Leave unknown values explicit.
If an Orphex connector is available, check it before asking for exports. Run capability_search with platform orphex and limit 100; use a read only if that search returns its id, and ask which workspace to use when several are bound. Read business_outcomes.mmp_cohort_campaign_read for install-cohort revenue, purchases and events at d0, w0 and m0, and controller.catalog then controller.fetch at level campaign for matching cost. Then list guides with skill_catalog (kind guide, topic subscription, then measurement) and follow a matching one through skill_read; choose by title, never by a stored id.
Review customer cohort value, repeat behavior and acquisition economics at a common observed horizon. A skill title containing LTV does not make a finite observation a lifetime estimate.
If an Orphex connector is available, check it before asking for exports. Run capability_search with platform orphex and limit 100; use a read only if that search returns its id, and ask which workspace to use when several are bound. Read business_outcomes.mmp_cohort_campaign_read for install-cohort revenue, purchases and events at d0, w0 and m0, and controller.catalog then controller.fetch at level campaign for matching cost. Then list guides with skill_catalog (kind guide, topic subscription, then measurement) and follow a matching one through skill_read; choose by title, never by a stored id.
If a read is not returned, this connection cannot reach that Orphex data for the workspace: say so, then use the live platform reads it offers or the supplied exports. An absent, refused or empty read is not evidence of zero, none or healthy. Describe each read with capability_describe before run_read, keep date_end no later than yesterday, disclose request adjustments, and name each number's source, workspace and window. This skill's evidence rules still govern any guide, insight or playbook label, and no read authorizes account changes. Ask the user only for what is still missing.
Define new/acquired customer membership, acquisition date, attribution and cost allocation, unique identity rules, product/business model, currency, revenue/cost basis, snapshot, and per-customer follow-up. Use the same elapsed horizon from acquisition for every eligible customer; a monthly cohort's average age or earliest member age cannot certify maturity for the whole cohort. Exclude right-censored periods from an equal-horizon comparison or disclose a valid censoring-adjusted method rather than extrapolating automatically.
Net/gross revenue, collected cash, recognized revenue, ARR and contribution are different numerators. For SaaS, a booked annual contract or ARR is not observed recognized cash over 60 days. Define repeat purchasers, active/subscription retention, renewals or churn against the original eligible denominator; do not mix transaction count with unique repeat customers. For repeat metrics, preserve customers with zero subsequent activity when still observable. Consent/deletion or identity gaps are missingness limits, not churn evidence.
Observed horizon value per acquired customer = matching cohort value / unique acquired customers. CAC = scoped acquisition cost / those customers. Aggregate from sums, preserve currencies, and avoid zero-denominator ratios. Label revenue-to-CAC separately from contribution-to-CAC; neither is company ROI without the full cost definition. Payback requires cumulative contribution/cash by elapsed time; it cannot be inferred from a revenue multiple alone.
A lifetime forecast needs an explicitly supplied/validated retention or survival model, horizon, cost path, discounting assumptions when applicable, calibration and uncertainty. Do not invent a retention multiplier, claim a younger cohort's ultimate value, or bid to a forecast from these aggregates. Use the optional calculator only for common-horizon arithmetic, not survival modeling.
Deliver observed horizon coverage, weighted value/CAC/repeat metrics, economic definition, uncertainty and a next cohort check. Acquisition attribution is not causal lift; budget or bidding changes remain bounded proposals.
State whether the result is complete, partial, or blocked for the requested decision. Link material findings to actual supplied rows/sources and separate observed metrics, hypotheses, and estimates. Lead with a short business conclusion, then evidence, uncertainty, and the next measurable check. A data export or installed skill does not authorize account changes.
For the supported arithmetic only, optionally run the bundled calculator with Python 3: python3 scripts/marketing_math.py cohort < calculation.json. Read its input mapping in the input contract before preparing JSON. It reads JSON, not CSV directly. If Python or the requested method is unavailable, show a reproducible alternative calculation or mark it unsupported; do not report an uncomputed result as verified.
See the recorded checks, compared runs, results, and limits for v2.1.0. Example reviews illustrate the method; they do not guarantee account results.
Read the evaluation report