Agent skill

Cac Modeler

by MaxKmet in MaxKmet/idea-validation-agents

Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer.

MITAuto-check passedBusiness, Finance & HR

Install Cac Modeler

skills CLI
$ npx skills add MaxKmet/idea-validation-agents --skill cac-modeler -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install MaxKmet/idea-validation-agents cac-modeler --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/MaxKmet/idea-validation-agents.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cac-modeler .claude/skills/cac-modeler && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
cac-modeler
GitHub stars
477
Token cost
~3.3k tokens
SKILL.md length
1,389 words
Files
1
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer.

  • Works in 10 steps: Load all inputs: pricing.json,… → Extract market_insights calibration… → Determine founder's budget tier from… → …
  • Business, Finance & HR work in your project
  • SKILL.md covers Purpose, Input, LTV Estimation and CAC by Channel, plus 6 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Cac Modeler is an agent skill from MaxKmet/idea-validation-agents. Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer. Uses marketinsights to calibrate channel CPMs and competitive intensity. Includes indie budget tier definitions and viability thresholds.

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Business, Finance & HR. It works with TikTok and Reddit. The repository describes itself as: AI agents that act as your personal venture analyst - from startup idea brainstorming to full validation and go-to-market strategy. Built for developers who'd rather validate in… The licence is MIT.

When your agent uses it

  • Business, Finance & HR work in your project

Example prompts

  • “Use the cac-modeler skill to model LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer”
  • “/cac-modeler”

Workflow steps

10 steps, taken from the first numbered list in SKILL.md.

  1. Load all inputs: pricing.json, retention.json, distribution.json, competitors.json, user_profile.md, and all matching…
  2. Extract market_insights calibration signals (trend velocity, platform activity, monetization evidence, competitor ad activity).
  3. Determine founder's budget tier from user_profile.md.
  4. Compute LTV using the formula, pricing data, and retention data. Note confidence level.
  5. For each applicable channel (after relevance filter), estimate CAC using benchmarks adjusted by market_insights and distribution.json…
  6. Compute LTV:CAC ratio per channel. Classify each.
  7. Compute payback period for viable channels.
  8. Rank channels by LTV:CAC ratio. Select recommended first channel — must be executable by this founder at their budget tier.
  9. Determine viability verdict.
  10. Write output.

What it can do on your machine

Read from SKILL.md and the folder at commit 3a4c800. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are json).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Cac Modeler loads about 3.3k tokens when it runs. Until then it costs about 59 tokens; SKILL.md has 1,389 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~59
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from MaxKmet/idea-validation-agents at commit 3a4c800, republished under its MIT licence (© MaxKmet). 1,389 words, ~3,315 tokens.

Download SKILL.mdSave it as .claude/skills/cac-modeler/SKILL.md (or your agent's skills folder).
name
cac-modeler
description
Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer. Uses market_insights to calibrate channel CPMs and competitive intensity. Includes indie budget tier definitions and viability thresholds.
<!-- version: 0.2.0 | outputs: memory/ideas/<slug>/cac.json -->

Skill: cac-modeler

Purpose

Determine whether this indie developer can realistically acquire users profitably given their budget and the competitive landscape. Many ideas fail not because of bad products but because CAC exceeds LTV at indie scale. This skill builds a complete unit economics picture: LTV from retention and pricing, CAC from channel benchmarks calibrated by market_insights signals, and a payback timeline that tells the founder how long they need to fund growth before the business sustains itself.

Input

  • Idea slug
  • memory/user_profile.md (budget constraint, ICP tier)
  • memory/ideas/<slug>/pricing.json (target price → revenue per user)
  • memory/ideas/<slug>/retention.json (D30 retention, churn risk → estimated lifespan)
  • memory/ideas/<slug>/distribution.json (viable channels, k-factor, ASO opportunity, creator fit)
  • memory/ideas/<slug>/competitors.json (competitor pricing and scale signals — optional)
  • memory/market_insights/<niche>-*-<YYYY>-<MM>.md (trend data — use all available platform files)
Using Market Insights

Trend analysis files provide critical calibration for CAC estimates. Extract the following:

FieldHow it informs CAC
trend_velocityRising markets have lower organic CAC (more discovery demand) but higher paid CAC (more advertisers bidding). Declining markets have the inverse.
top_signals (TikTok hashtags, Reddit threads, App Store categories)Validate which organic channels have real activity — a niche trending on TikTok means TikTok organic CAC is at the lower end of the range
monetization_evidenceIf competitors are already running ads (visible in trend narratives), paid CPMs in that niche are likely elevated. Adjust paid CAC estimates upward.
Platform narrative (Reddit pain points, creator engagement)Identifies which communities are already activated — lower cost to reach an audience that's already discussing the problem

LTV Estimation

LTV is the foundation. Without an accurate LTV, CAC ratios are meaningless.

LTV Formula
LTV = ARPU_monthly × average_lifespan_months

Where:

  • ARPU_monthly (Average Revenue Per User per month):

    • Subscription: target_price × (1 - churn_rate_monthly)
    • Freemium: target_price × freemium_conversion_estimate
    • One-time purchase: price / 12 (annualized for comparison)
    • Consumables: average_monthly_spend (estimate from category)
  • average_lifespan_months (derived from retention.json):

D30 retentionEstimated avg lifespanRationale
≥ 25%12–18 monthsStrong retention; users who survive D30 tend to stay long
15–24%6–12 monthsDecent; typical for well-executed niche apps
8–14%3–6 monthsBelow average; expect significant churn in months 2–3
< 8%1–3 monthsDisposable; most users gone within a billing cycle

If retention.json is unavailable, use category median D30 benchmarks:

CategoryMedian D30
Social / messaging15–25%
Health & fitness10–18%
Finance / budgeting12–20%
Productivity / tools8–15%
Games (casual)5–12%
Education6–12%
Lifestyle / habit10–18%
Creative tools12–20%
LTV Confidence
Data availableConfidence
pricing.json + retention.json with D30 dataHigh
pricing.json only (using category median retention)Medium
Neither (using category defaults for both)Low — flag prominently

CAC by Channel

Indie Budget Tiers

Define the founder's budget context before estimating per-channel CAC:

TierMonthly ad/marketing spendWho this isImplication
Bootstrap$0–$100/moBeginner or side-project builderPaid channels are off the table. Must rely entirely on organic.
Lean$100–$500/moBuilder with some runwayCan test one paid channel with tight creative constraints.
Moderate$500–$2,000/moGrowth-tier or funded builderCan run proper paid campaigns with A/B testing on one platform.
Serious> $2,000/moRare for indie; growth stageMulti-platform paid, retargeting, influencer budgets.

Map from user_profile.md: budget_constraint = "low" → Bootstrap. "medium" → Lean. "high" → Moderate or Serious (ask if ambiguous).

Channel CAC Estimation

For each channel, estimate CAC using the funnel model:

CAC = cost_per_impression / (CTR × install_rate × activation_rate)

For organic channels, "cost" is time-valued at $0 but the skill reports the effective CAC — the opportunity cost of the founder's time, normalized per acquired user.

Channel benchmarks with market_insights adjustments
ChannelBase CAC rangeAdjust down ifAdjust up if
ASO organic$0.50–$3.00ASO opportunity = "high" (from distribution.json); niche category with low competitionSaturated category; market_saturation = "high" from competitors.json
Content / SEO$1.00–$8.00Niche has high search volume with low-quality top results; rising or rising-fast trend velocityCompetitive keywords dominated by established brands
TikTok organic$0.50–$5.00Niche is trending on TikTok (visible in market_insights top_signals); app produces shareable output (content-as-distribution loop)Low TikTok engagement for this category; no visual hook
Reddit / community$0.50–$4.00Active communities discussing this problem (from Reddit market_insights); founder is an active community memberSmall or inactive communities; product is hard to discuss authentically
Paid social (Meta)$3.00–$40.00Broad audience, visual product, low CPM nicheCompetitive niche with high CPMs; narrow targeting required
Paid social (TikTok)$2.00–$25.00Trending niche (lower CPMs due to content volume); strong creative hookNiche with limited content; poor demo-ability
Influencer / creator$2.00–$25.00Creator economy fit = "high" (from distribution.json); micro-influencers available in nicheLow creator fit; only macro-influencers relevant (expensive)
Word of mouth / referral$0.00–$2.00k-factor ≥ 0.3 (from distribution.json); inherent or collaborative viral loopk-factor < 0.1; no natural sharing mechanic
Press / Product Hunt$0.00–$5.00Novel concept with clear narrative; uses new platform featureCrowded launch day; "me too" product

Press/Product Hunt provides a one-time spike, not sustained acquisition. Model it as a fixed user cohort (typically 500–5,000 installs), not a recurring channel.

Channel Relevance Filter

Not all channels apply to every idea. Skip channels that score "not applicable":

Skip conditionChannels to exclude
App has no visual output or demo hookTikTok organic, influencer
budget_constraint = "low" (Bootstrap tier)Paid social (both), influencer (unless micro/barter)
No relevant online communities existReddit / community
viral_loop_exists = false AND k_factor < 0.1Word of mouth / referral
Utility app with no narrative anglePress / Product Hunt
Show full SKILL.md (550 more words)Show less

LTV:CAC Ratio Thresholds

After computing LTV and per-channel CAC, classify each channel:

LTV:CAC ratioClassificationMeaning
≥ 5:1ExcellentStrong unit economics. Scale this channel aggressively.
3:1–5:1HealthyViable and sustainable. Standard target for indie apps.
2:1–3:1MarginalBarely works. Viable only if the founder can optimize over time or retention improves.
1:1–2:1UnprofitableLosing money after overhead. Not viable unless LTV increases significantly.
< 1:1Cash burnEvery user costs more than they ever return. Do not use this channel.

A minimum of one channel at ≥ 3:1 is required for the overall viability verdict to be "viable."

Payback Period Calculation

Payback period answers: "How many months until a user has paid back their acquisition cost?"

payback_months = CAC / ARPU_monthly

Report the payback period for the recommended first channel and any channel with LTV:CAC ≥ 3:1.

Payback periodAssessment
≤ 1 monthExcellent — cash flow positive almost immediately
1–3 monthsGood — sustainable for a funded indie builder
3–6 monthsAcceptable — requires patience and runway
6–12 monthsRisky — the founder needs alternative income during this period
> 12 monthsDangerous — cash flow negative for over a year. Not viable at indie scale unless lifetime deal covers upfront cost.

For Bootstrap tier founders, any payback period > 3 months is a red flag — they likely can't sustain the cash gap.

Viability Verdict

ConditionVerdict
At least 2 channels with LTV:CAC ≥ 3:1, at least one organicviable
Exactly 1 channel with LTV:CAC ≥ 3:1, OR organic channels at 2:1–3:1 with improvement potentialmarginal
No channel achieves LTV:CAC ≥ 2:1, OR only paid channels viable but founder is Bootstrap tiernot-viable

If market_insights show trend_velocity = "rising-fast", add a note that organic CAC may improve as the market grows (more search volume, more platform promotion of trending content). This is speculative but worth flagging.

Process

  1. Load all inputs: pricing.json, retention.json, distribution.json, competitors.json, user_profile.md, and all matching memory/market_insights/<niche>-*-<YYYY>-<MM>.md files.
  2. Extract market_insights calibration signals (trend velocity, platform activity, monetization evidence, competitor ad activity).
  3. Determine founder's budget tier from user_profile.md.
  4. Compute LTV using the formula, pricing data, and retention data. Note confidence level.
  5. For each applicable channel (after relevance filter), estimate CAC using benchmarks adjusted by market_insights and distribution.json signals.
  6. Compute LTV:CAC ratio per channel. Classify each.
  7. Compute payback period for viable channels.
  8. Rank channels by LTV:CAC ratio. Select recommended first channel — must be executable by this founder at their budget tier.
  9. Determine viability verdict.
  10. Write output.

Output

Write to memory/ideas/<slug>/cac.json:

json
{
  "ltv": {
    "estimated_ltv": 0,
    "arpu_monthly": 0,
    "average_lifespan_months": 0,
    "ltv_confidence": "high | medium | low",
    "ltv_assumptions": []
  },
  "founder_budget_tier": "bootstrap | lean | moderate | serious",
  "cac_by_channel": {
    "aso_organic": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "content_seo": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "tiktok_organic": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "reddit_community": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "paid_social_meta": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "paid_social_tiktok": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "influencer": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "word_of_mouth": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0 },
    "press_product_hunt": { "cac": 0, "ltv_cac_ratio": 0, "classification": "", "payback_months": 0, "one_time_cohort_estimate": 0 }
  },
  "skipped_channels": [],
  "viable_channels": [],
  "marginal_channels": [],
  "non_viable_channels": [],
  "recommended_first_channel": "",
  "recommended_first_channel_rationale": "",
  "payback_period_months": 0,
  "market_insights_adjustments": [],
  "viability_verdict": "viable | marginal | not-viable",
  "viability_verdict_rationale": ""
}

Notes

  • The recommended_first_channel must be achievable by the founder at their current tier. Don't recommend paid social to a Bootstrap founder. Don't recommend Reddit community marketing to someone with no community presence. Cross-reference user_profile.md distribution advantages.
  • If retention.json is unavailable, LTV confidence drops to medium at best. Flag this prominently — CAC ratios are only as good as the LTV estimate, and LTV depends entirely on retention.
  • When distribution.json shows a strong viral loop (k-factor ≥ 0.3), the effective CAC for word-of-mouth should account for the viral multiplier: effective_CAC = base_CAC / (1 / (1 - k)). A k-factor of 0.5 halves the effective CAC.
  • Press/Product Hunt is not a channel strategy — it's a launch event. Model it as a one-time cohort (estimate 500–5,000 installs) and do not include it in recurring channel viability.
  • If all market_insights files are past their stale_after date, note that CAC benchmarks may have shifted and recommend refreshing trend analysis.

© MaxKmet, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/cac-modeler of MaxKmet/idea-validation-agents.

Open the folder on GitHubat commit 3a4c800

Compare with similar skills

Cac Modeler next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Cac Modeler compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Cac Modeler this skillMaxKmet/idea-validation-agents477—~3.3kAutomated safety check: PassMIT
Platform Arbitrageacogood/diffmode_free163—~2.5kAutomated safety check: PassApache-2.0
Social Media Monitornexscope-ai/eCommerce-Skills1.1k—~584Automated safety check: PassMIT
Last30daysmvanhorn/last30days-skill64k—~7.9kAutomated safety check: NotesMIT
Last30days CnJesseovo/last30days-skill-cn1.9k—~2.4kAutomated safety check: NotesMIT
Paid Ads AuditAgriciDaniel/claude-ads9.8k—~1.5kAutomated safety check: PassMIT

Similar skills

  • Platform Arbitrage

    acogood/diffmode_free

    Platform arbitrage audit for a founder's product — a Diffmode growth-tactics think-tank research stage (prompt TT-DG-003).

    163 GitHub stars~2.5k tokensUpdated 1 mo ago
    Productivity & AutomationAuto-check passed
  • Social Media Monitor

    nexscope-ai/eCommerce-Skills

    Monitor social media mentions, trends, and competitor activity for e-commerce brands.

    1.1k GitHub stars~584 tokensUpdated 1 mo ago
    Sales & SupportAuto-check passed
  • Last30days

    mvanhorn/last30days-skill

    Research what people actually say about any topic in the last 30 days.

    64k GitHub stars~7.9k tokensUpdated today
    Research & ScienceAuto-check: notes
  • Last30days Cn

    Jesseovo/last30days-skill-cn

    Research what Chinese internet users actually said in the last 30 days across Weibo, Xiaohongshu (RED), Bilibili, Zhihu, Douyin, WeChat public accounts, Baidu and Toutiao: engagement-weighted…

    1.9k GitHub stars~2.4k tokensUpdated 2 days ago
    Productivity & AutomationAuto-check: notes
  • Paid Ads Audit

    AgriciDaniel/claude-ads

    Runs a source-grounded paid advertising audit across up to 12 ad platforms, with parallel platform workers, deterministic scoring and a versioned JSON bundle.

    9.8k GitHub stars~1.5k tokensUpdated yesterday
    Marketing & SEOAuto-check passed
  • Influencer Discovery

    tigerless-labs/influencer-discovery

    Find the bloggers/creators who can help promote your work, capture their contact info, and append them to the target sheet in Google Sheets.

    212 GitHub stars~2.5k tokensUpdated 17 days ago
    Marketing & SEOAuto-check: notes

More from MaxKmet/idea-validation-agents

All 15 skills in this repo
  • Competitor Mapper

    MaxKmet/idea-validation-agents

    Maps the full competitive landscape — direct, indirect, substitute, and emerging competitors — with positioning gap analysis, review mining, and marketinsights-calibrated saturation scoring.

    477 GitHub stars~3.3k tokensUpdated 3 mo ago
    Auto-check passed
  • Decision Memo

    MaxKmet/idea-validation-agents

    Writes a concise, human-readable decision brief summarizing the full validation analysis — including score, verdict, RAT experiment, pre-mortem, and tier-appropriate next actions.

    477 GitHub stars~2k tokensUpdated 3 mo ago
    Auto-check passed
  • Desire Evaluator

    MaxKmet/idea-validation-agents

    Scores the strength of core human desire motivations (survival, status, belonging, control, curiosity) for a given app idea to predict user pull and retention potential.

    477 GitHub stars~551 tokensUpdated 3 mo ago
    Auto-check passed
  • Distribution Analysis

    MaxKmet/idea-validation-agents

    Evaluates organic reach potential, paid feasibility, platform distribution advantages, creator economy fit, and founder edge for a B2C app idea.

    477 GitHub stars~3.1k tokensUpdated 3 mo ago
    Auto-check passed
  • Idea Scoring

    MaxKmet/idea-validation-agents

    Aggregates all dimension scores into a final idea score (0–100) and issues a verdict.

    477 GitHub stars~3.2k tokensUpdated 3 mo ago
    Auto-check passed
  • Pivot Engine

    MaxKmet/idea-validation-agents

    Generates structured pivot options for a scored idea based on weak dimensions, marketinsights signals, and founder constraints.

    477 GitHub stars~4.7k tokensUpdated 3 mo ago
    Auto-check passed

Works with

Questions about Cac Modeler

What does Cac Modeler do?

Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer. Cac Modeler is an agent skill from MaxKmet/idea-validation-agents. Models LTV, CAC by channel, LTV:CAC ratios, and payback period for an indie developer.

When should I use Cac Modeler?

Cac Modeler fits situations like: business, Finance & HR work in your project.

How do I install Cac Modeler in Claude Code?

Run `npx skills add MaxKmet/idea-validation-agents --skill cac-modeler -a claude-code`. Or copy the skill folder (skills/cac-modeler in MaxKmet/idea-validation-agents) into .claude/skills/cac-modeler in your project. Claude Code loads it when a task matches its description.

How do I install Cac Modeler in Codex?

Run `npx skills add MaxKmet/idea-validation-agents --skill cac-modeler -a codex`. Or copy the skill folder (skills/cac-modeler in MaxKmet/idea-validation-agents) into .agents/skills/cac-modeler in your project. Codex loads it when a task matches its description.

Can I use Cac Modeler in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add MaxKmet/idea-validation-agents --skill cac-modeler -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cac-modeler, .gemini/skills/cac-modeler, .github/skills/cac-modeler and .opencode/skills/cac-modeler in your project.

What does Cac Modeler need to run?

SKILL.md names no scripts, command-line tools or credentials: Cac Modeler is instructions for the agent only.

Does Cac Modeler access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Cac Modeler safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Cac Modeler use?

Cac Modeler is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Cac Modeler use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Cac Modeler?

Skills that share tags, products or a category with Cac Modeler: Platform Arbitrage (acogood/diffmode_free, 163 stars), Social Media Monitor (nexscope-ai/eCommerce-Skills, 1.1k stars), Last30days (mvanhorn/last30days-skill, 64k stars) and Last30days Cn (Jesseovo/last30days-skill-cn, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Cac Modeler?

MaxKmet (a GitHub user) maintains it in MaxKmet/idea-validation-agents, which has 477 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on June 16, 2026.

Source: MaxKmet/idea-validation-agents on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.