Fleet Analytics (Fleet Health Report)

What should I do right now to grow my Apify revenue?

Fleet Analytics scans every actor in your account, measures real per-run profit (not guessed), detects revenue cliffs and silent quality bleed before normal alerts trip, benchmarks your pricing against your own category cohorts, and returns a single ranked action you can work from. One API call, works whether you run 5 actors or 500. $1.00 per run.

Open the run, read nextBestAction, do one thing. That loop is the product. The learning layer tracks which actions actually moved revenue in your fleet and calibrates future recommendations against it.

What Fleet Analytics returns

operatorBrief (read this first)

An executive operating memo built from the run: what to fix today, what to build next, the this-week / this-month / this-quarter plan, what to ignore, what to watch, and a proof block. The whole decision loop collapsed into one object you read in 30 seconds.

Fleet Alpha (efficiency score)

A single 0–100 score for how efficiently your portfolio converts active actors into net profit — benchmarked against your own historical best, not a generic baseline. 'You're operating at 72% of your best observed efficiency' is the number you'll watch.

What to build next

buildRecommendation names the most profitable category you've already proven — actor count, revenue share, and your measured average profit per actor in it. It points at validated demand, not a forecast for an unbuilt actor.

Revenue concentration risk

The 'if your top actor dies' metric: top-actor and top-3 share of fleet profit, a bus factor (how few actors carry 80% of profit), and the monthly profit at risk. Most builders never surface this for themselves.

Time allocation (ROI per hour)

Ranks the actionable opportunities by ROI per hour ($/mo impact ÷ effort). Set your hours for the week and it greedily picks the highest-return work that fits — the answer to 'I have 6 hours, what's the best use?'

nextBestAction (the headline)

One ranked action with title, urgency, estimated monthly revenue impact in USD, step-by-step instructions, an executionRisk block (blast radius + rollback path), and a calibrated confidence score. Every run answers one question: what do I work on right now?

Real per-run profit measurement

PPE revenue − platform compute cost per run, per actor. Surfaces actors that succeed on every run but lose money on every run. Thin-margin actors almost always have fixable root causes — pricing misconfiguration, over-provisioned memory, or slow code paths.

Revenue cliff detection

A sudden drop in daily revenue that normal fail-rate alerts miss — because the actor is technically succeeding, it's just not earning. First-detection alerts catch it days earlier than dashboard-staring does.

Ranked actionPlan

Full queue of 5–20 actions (depending on fleet size) ordered by impact × confidence. Each entry: priority, action type, estimatedImpactMonthlyUsd, effort estimate, and calibratedConfidence from your fleet's learning history.

Pricing benchmarking

Compares your PPE pricing against the actors you've shipped in the same category. Flags under-priced actors (leaving revenue on the table) and over-priced actors (suppressing adoption) before the market tells you.

Learning layer

Tracks which past actions actually moved revenue in your fleet. After 3+ samples per action type (pricing change, SEO update, schema fix), confidence scores graduate from heuristic to calibrated. The tool gets more accurate the longer you use it.

outcomeTracking (did it work?)

Most tools tell you what to do. This one tells you whether last week's fix actually worked. It correlates each resolved action against the real profit delta on its target actor and classifies it — confirmed / overperformed / partial / underperformed / regressed — then headlines it: 'Your actions since last run delivered $420 (79% of tracked items hit expected impact).' That feedback loop is the product.

agentContract (agent-native)

One flat object — recommendedAction (act_now / monitor / ignore), bucket, urgency, estimatedImpactMonthlyUsd, confidence, targetActorId, fleetHealthScore — so a Dify if/else node, a Make rule, or an LLM tool-call branches on one path without walking the JSON tree. recommendedAction is named identically on every actor in the backend suite, so one branch works regardless of which actor ran.

portfolioSegments

An operator-grade grouping of the fleet, not just a queue: cashCows (top earners, stable), risingStars (growing), maintenanceRisks (high fail rate), zombies (zero runs in 30d), hiddenGems (real traffic, no monetization), experiments. Each actor lands in at most one segment with a note explaining why.

Portfolio decision methods compared

MethodReturns a ranked actionCalibrated to your fleetTime to first insight
Fleet AnalyticsYes — single nextBestActionYes — learning layerUnder 2 minutes
Apify Console dashboardNo — raw metricsNoYou interpret it
Spreadsheet + billing CSVWhatever you buildManual2–6 hours setup + weekly refresh
IntuitionNoNoFast, often wrong

Example Fleet Analytics output

{
  "operatorBrief": {
    "headline": "Fix pricing first: my-api-wrapper is under-priced vs its cohort",
    "today": { "do": "Raise my-api-wrapper PPE to \$0.15", "expectedImpactMonthlyUsd": 340, "risk": "low" },
    "nextBuild": "Build another LEAD_GENERATION actor — your most profitable proven category",
    "doNotDo": ["Hold off rebuilding old-scraper — under \$5/mo upside"]
  },
  "fleetAlpha": { "score": 72, "efficiency": 6.36, "benchmark": "your own historical best" },
  "revenueConcentration": { "topActorPct": 41, "busFactor": 2, "riskLevel": "medium" },
  "nextBestAction": {
    "urgency": "high",
    "title": "Raise PPE on my-api-wrapper from \$0.05 to \$0.15 per call",
    "estimatedImpactMonthlyUsd": 340,
    "calibratedConfidence": 0.78,
    "reason": "Under-priced vs your category cohort (median \$0.18); 2,267 runs/month sustain pricing power",
    "steps": ["Open actor settings", "Edit pricingPerEvent", "Confirm PPE dialogue"]
  },
  "actionPlan": [
    { "priority": 1, "type": "pricing-change", "estimatedImpactMonthlyUsd": 340 },
    { "priority": 2, "type": "quality-fix", "estimatedImpactMonthlyUsd": 120 },
    { "priority": 3, "type": "seo-update", "estimatedImpactMonthlyUsd": 80 }
  ],
  "revenueCliffs": [
    { "actor": "old-scraper", "cliffDetectedAt": "2026-04-18", "revenueDropPct": 0.62 }
  ],
  "calibration": { "status": "developing", "samples": 12, "byType": { "pricing-change": 4, "quality-fix": 5 } }
}

Every run answers one question: what should I do right now to increase revenue?

How Fleet Analytics works

1

Schedule it daily or weekly — no input required when on Apify, token auto-injected. Pick a mode (growth / cost / stability / weekly) to focus the run

2

Reads revenue, runs, quality, and pricing for every actor; compares to previous snapshots

3

Returns nextBestAction + full actionPlan; logs outcomes back to the learning layer on re-run

Limitations

  • 1.Cold-start accuracy. The learning layer needs 3+ historical samples per action type to graduate from heuristic to calibrated confidence. First 4 weeks the recommendations are directionally correct but not yet tuned to your fleet's specific response curves.
  • 2.Revenue attribution is approximate. PPE revenue is directly measured; the impact estimates for non-pricing actions (SEO, quality, schema) are based on category benchmarks plus your fleet's historical responses. Treat estimatedImpactMonthlyUsd as a ranking signal, not a forecast.
  • 3.Not a replacement for customer research. Fleet Health Report optimizes what you already have. If your fleet is fundamentally targeting the wrong market, no action from this tool will fix that — you need customer interviews, not portfolio analytics.
  • 4.Pricing benchmarks use your own category. The tool compares your pricing against the other actors you've shipped in the same category. It does not compare against third-party actors across the Apify Store — that signal is too noisy to calibrate against.
  • 5.Requires fleet of 5+ actors for meaningful outputs. With 1–4 actors there's not enough signal for calibration or cohort benchmarking. For single-actor analysis use Quality Monitor instead.

What Fleet Analytics costs

$1.00 per run, flat rate regardless of fleet size. One event charge covers the whole report — next best action, decision cards, revenue opportunities, outcome tracking, calibration — not per-field billing. Scheduled daily that's $30/month. Weekly is $4/month. The average nextBestAction carries an estimated monthly impact of $50–$500 per action — the ROI math is not subtle. Apify's free plan includes $5/month in credits, enough for 5 runs per month.

Frequently asked questions

How is this different from Quality Monitor?

Quality Monitor scores each actor on quality dimensions and tells you what's broken. Fleet Health Report operates one layer up — it takes every actor's performance, revenue, and quality data and answers a single business question: 'What should I do next to grow revenue?' Quality Monitor emits fixSequence[]; Fleet Health Report emits nextBestAction. Use Quality Monitor when you're fixing things. Use Fleet Health Report when you're deciding what to fix.

What is nextBestAction?

nextBestAction is a single ranked action the tool recommends you take right now, based on your fleet's actual revenue, quality, and pricing data. It includes: the action title, urgency (high / medium / low), estimated monthly revenue impact (USD), step-by-step instructions, and a calibratedConfidence score grounded in your fleet's historical outcomes from similar actions. Open the run, read one field, do one thing. That loop is the product.

What is Fleet Alpha?

Fleet Alpha is a single 0-100 score for how efficiently your portfolio converts active actors into net profit — benchmarked against your own historical best, not a generic baseline. The first run sets your baseline; later runs score against it, so 'you're operating at 72% of your best observed efficiency' tells you whether the fleet is getting more or less efficient over time. It's deterministic (a ratio against a persisted high-water mark), never a forecast — and because it needs accumulated history, a fresh competitor can't reproduce it.

Can it tell me what actor to build next?

Yes — buildRecommendation names the most profitable category you've already proven, with the actor count, revenue share, and your measured average net profit per actor in that category. It points you at demand you've already validated in your own fleet rather than guessing. The figure is your category average, explicitly not a forecast for the unbuilt actor.

How does the learning layer work?

Every time you complete an action from a prior actionPlan, Fleet Health Report records the outcome — did revenue actually move, and by how much? Over time it calibrates its confidence per action type (pricing change, schema improvement, SEO update, etc.) against your specific fleet. After 3+ historical samples per action type, confidence scores become grounded rather than heuristic. The tool gets more accurate the longer you use it.

How does it measure 'real per-run profit'?

Fleet Health Report reads your Apify billing data (PPE earnings) and pairs it with platform compute costs (memory × runtime). Profit = PPE revenue − platform compute. Most actors have thin per-run margins they've never measured — the tool surfaces actors that are losing money on every run so you can raise pricing, cut compute, or deprecate them.

What's a 'revenue cliff'?

A revenue cliff is a sudden drop in daily revenue for an actor that normal fail-rate alerts miss — because the actor is still technically succeeding, it's just not earning. Causes: users dropping off from bad output quality, SEO ranking drops, competitor launches, or pricing misconfigurations. Fleet Health Report flags cliffs at first detection, not three weeks later when you notice on the dashboard.

Does it work with a 5-actor fleet?

Yes. The tool is sized for 5 actors to 500. At small fleet sizes the action plan has fewer entries, but the underlying analysis is the same. The learning layer kicks in faster with concentrated action types — 10 pricing changes in a 5-actor fleet calibrates as well as 50 in a 50-actor fleet.

Can an AI agent or Dify / Make workflow consume the output directly?

Yes — that's what agentContract is for. Every run resolves to one flat object with a recommendedAction enum (act_now / monitor / ignore), bucket, urgency, estimated monthly impact, confidence, and target actor ID, so an if/else node branches on a single path without walking the JSON tree. recommendedAction is named identically across the whole backend suite, so one branch works no matter which actor ran. Each action also carries a typed executionHint (type + suggested value + Console deep-link) for routing, and a howToFix[] step list you can paste straight into a ticket.

Can I focus the run, or get a leaner output for automation?

Two knobs. mode (default / growth / cost / stability / weekly) reweights the action plan for the lens you care about — growth surfaces revenue expansion, cost surfaces compute and pricing leaks, stability surfaces regressions and failures. outputProfile (full / standard / executive / automation) projects the result: full is the complete decision tree, executive is the operatorBrief for a 30-second read, automation strips it to agentContract + nextBestAction + the fleet-health headline for a one-object branch. outputProfile is a pure projection — nothing is recomputed and the charge is unchanged.