Fleet Health Report — Consolidated Fleet Intelligence is an Apify actor on ApifyForge. Get a complete, data-driven view of your entire Apify actor portfolio plus a prioritized action plan in a single API call. It costs $0.10 per fleet-analyzed. Best for investigators, analysts, and risk teams conducting due diligence, regulatory tracking, or OSINT research. Not ideal for real-time surveillance or replacing classified intelligence systems. Maintenance pulse: 90/100. Last verified March 27, 2026. Built by Ryan Clinton (ryanclinton on Apify).
Fleet Health Report — Consolidated Fleet Intelligence
Fleet Health Report — Consolidated Fleet Intelligence is an Apify actor available on ApifyForge at $0.10 per fleet-analyzed. Get a complete, data-driven view of your entire Apify actor portfolio plus a prioritized action plan in a single API call. ApifyForge Fleet Analytics scans every actor in your account, pulls run statistics, computes failure rates, estimates monthly revenue, and (optionally) orchestrates 7 specialist actors in parallel to produce a composite Fleet Health Report with a Fleet Health Score, structured Action Plan, and narrative summary. Whether you manage 5 actors or 500, this tool tells you not jus
Best for investigators, analysts, and risk teams conducting due diligence, regulatory tracking, or OSINT research.
Not ideal for real-time surveillance or replacing classified intelligence systems.
What to know
- Limited to publicly available and open-source information.
- Report depth depends on the availability of upstream government and public data sources.
- Requires an Apify account — free tier available with limited monthly usage.
Maintenance Pulse
90/100Cost Estimate
How many results do you need?
Pricing
Pay Per Event model. You only pay for what you use.
| Event | Description | Price |
|---|---|---|
| fleet-analyzed | Charged per fleet analysis. Aggregates stats, trends, and forecasting across your actor portfolio. | $0.10 |
Example: 100 events = $10.00 · 1,000 events = $100.00
Documentation
Get a complete, data-driven view of your entire Apify actor portfolio plus a prioritized action plan in a single API call. ApifyForge Fleet Analytics scans every actor in your account, pulls run statistics, computes failure rates, estimates monthly revenue, and (optionally) orchestrates 7 specialist actors in parallel to produce a composite Fleet Health Report with a Fleet Health Score, structured Action Plan, and narrative summary. Whether you manage 5 actors or 500, this tool tells you not just what is happening across your fleet but what to do about it first.
New in v3 -- operational work queue
- Fleet Health Score -- single 0-100 composite metric across reliability, cost, quality, compliance, and revenue, with per-dimension drivers and change vs last run
- Action Plan -- prioritized roadmap in four buckets (fixNow, optimizeNext, buildNext, considerArchiving) with impact estimates, confidence explanations, and a "why now" per item
- Lifecycle tracking -- acknowledge items as pending / in_progress / done; regression detection flags items that reappear after being marked done
- Trend + resolved items -- every item is tagged new/worsening/unchanged/improving/stalled vs the previous run, and resolved items surface their realized impact
- Modes --
default | growth | cost | stability | weeklyreweight priorities without changing what runs - Narrative summary -- human-readable headline, key focus, and trend line at the top of every report
- Guard-pipeline bridge -- actors with chronic low release confidence from
guard-pipelineautomatically surface in the action plan
Why use ApifyForge Fleet Analytics?
- One call, full picture. Instead of clicking through dozens of actor dashboards, get aggregated stats for your entire fleet in a single structured output.
- Revenue estimation. Automatically calculates estimated monthly revenue by multiplying each actor's 30-day run volume by its Pay-Per-Event price.
- Failure detection. Identifies actors with failure rates above 10% by sampling the last 100 runs and filtering to the 30-day window.
- Stale actor identification. Flags actors with zero runs in the last 30 days so you can decide whether to update or deprecate them.
- Category breakdown. Shows how your actors are distributed across Apify Store categories so you can spot gaps or overconcentration.
- Top performers. Ranks your actors by run volume and user count so you know which ones are carrying your portfolio.
- Dashboard-ready output. Designed to feed directly into the ApifyForge dashboard for visualization and trend tracking.
Key Features
- Fetches all actors from your account via paginated API calls (handles accounts with 100+ actors)
- Enriches data with Apify Store statistics (users, runs, builds)
- Pulls actor detail endpoint for PPE pricing configuration
- Samples last 100 runs per actor to compute actual success/failure rates over 30 days
- Computes weighted fleet-wide success rate (weighted by run volume so high-traffic actors count more)
- Identifies top 10 actors by runs and by users
- Estimates monthly revenue from PPE pricing multiplied by 30-day run counts
- Outputs a single comprehensive JSON object to the default dataset
How to Use
- Go to ApifyForge Fleet Analytics on the Apify Store.
- Click Try for free.
- Enter your Apify API Token (find it at Settings > Integrations).
- Click Start.
- Wait for the run to complete (typically 30-120 seconds depending on fleet size).
- View the results in the Dataset tab, or download as JSON.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
apifyToken | string | No | (from platform) | Your Apify API token. Leave empty when running on Apify -- the token is injected automatically. Required only for local testing. |
includeSpecialistReports | boolean | No | false | When true, orchestrate 7 fleet-wide specialists in parallel (quality-monitor, cost-watchdog, pricing-advisor PPE mode, pricing-advisor plan mode, competitor-scanner, compliance-scanner, market-gap-finder) and synthesize their signals into the Action Plan. Adds 3-10 minutes to run time but upgrades the output from a metadata rollup to a full Fleet Health Report. |
includeRevenueBreakdown | boolean | No | false | When true, produce a per-actor revenue breakdown with top earners, pricing tier classification, and missed-monetization opportunities. Zero extra API cost (reuses already-fetched data). |
mode | string | No | default | One of default, growth, cost, stability, weekly. Reweights action plan priorities without changing which specialists run. |
acknowledgements | array | No | [] | Update the status of action items from a previous run. Each entry is {id, status, note?} where status is pending, acknowledged, in_progress, or done. Acks are persisted across runs so in-progress items don't re-surface at full urgency. Items marked done that reappear are flagged as regressions. |
Input Examples
Fast mode -- metadata rollup only (~30 seconds):
{}
Full Fleet Health Report -- orchestrates 7 specialists, produces Action Plan + Fleet Health Score (~3-10 minutes):
{
"includeSpecialistReports": true,
"includeRevenueBreakdown": true,
"mode": "default"
}
Growth-focused weekly review:
{
"includeSpecialistReports": true,
"includeRevenueBreakdown": true,
"mode": "growth"
}
Acknowledging progress on items from a previous run:
{
"includeSpecialistReports": true,
"acknowledgements": [
{"id": "google-maps-scraper:cost-watchdog:cost", "status": "in_progress", "note": "patching the retry logic"},
{"id": "amazon-scraper:pricing-advisor:revenue", "status": "done"}
]
}
Output Example
{
"totalActors": 211,
"publicActors": 198,
"privateActors": 13,
"totalRuns30d": 48523,
"totalUsers30d": 1247,
"totalUsers7d": 389,
"successRate": 97.3,
"topActorsByRuns": [
{ "name": "google-maps-scraper", "id": "abc123", "runs30d": 8421 },
{ "name": "linkedin-scraper", "id": "def456", "runs30d": 5102 },
{ "name": "amazon-product-api", "id": "ghi789", "runs30d": 3890 },
{ "name": "twitter-scraper", "id": "jkl012", "runs30d": 2744 },
{ "name": "youtube-channel-scraper", "id": "mno345", "runs30d": 2301 }
],
"topActorsByUsers": [
{ "name": "google-maps-scraper", "id": "abc123", "users30d": 312 },
{ "name": "linkedin-scraper", "id": "def456", "users30d": 198 },
{ "name": "amazon-product-api", "id": "ghi789", "users30d": 145 },
{ "name": "twitter-scraper", "id": "jkl012", "users30d": 89 },
{ "name": "youtube-channel-scraper", "id": "mno345", "users30d": 76 }
],
"categoryBreakdown": {
"DEVELOPER_TOOLS": 85,
"AI": 72,
"SOCIAL_MEDIA": 28,
"SEO_TOOLS": 15,
"ECOMMERCE": 11
},
"actorsWithNoRuns30d": [
{ "name": "legacy-email-validator", "id": "xyz001", "lastRunAt": "2025-11-15T10:30:00.000Z" },
{ "name": "old-rss-parser", "id": "xyz002", "lastRunAt": "2025-12-01T08:00:00.000Z" }
],
"actorsWithHighFailRate": [
{ "name": "unstable-scraper", "id": "fail01", "failRate": 34.5, "runs30d": 29 },
{ "name": "broken-api-wrapper", "id": "fail02", "failRate": 18.2, "runs30d": 11 }
],
"estimatedMonthlyRevenue": 4821.50,
"analyzedAt": "2026-03-16T14:30:00.000Z"
}
Output Fields
| Field | Type | Description |
|---|---|---|
totalActors | number | Total number of actors in your account |
publicActors | number | Number of actors published publicly on the Apify Store |
privateActors | number | Number of private (unlisted) actors |
totalRuns30d | number | Aggregate run count across all actors in the last 30 days |
totalUsers30d | number | Aggregate unique user count across all actors in the last 30 days |
totalUsers7d | number | Aggregate unique user count across all actors in the last 7 days |
successRate | number | Fleet-wide weighted success rate (percentage, weighted by run volume) |
topActorsByRuns | array | Top 10 actors ranked by 30-day run count. Each entry has name, id, runs30d. |
topActorsByUsers | array | Top 10 actors ranked by 30-day unique user count. Each entry has name, id, users30d. |
categoryBreakdown | object | Map of Apify Store category names to the number of your actors in each category |
actorsWithNoRuns30d | array | Actors with zero runs in the last 30 days. Each entry has name, id, and optional lastRunAt timestamp. |
actorsWithHighFailRate | array | Actors with >10% failure rate and at least 5 recent runs. Each entry has name, id, failRate (percentage), and runs30d. |
estimatedMonthlyRevenue | number | Estimated total monthly revenue in USD, calculated as SUM(runs30d * ppePrice) for all actors with PPE pricing |
revenueBreakdown | object | Present when includeRevenueBreakdown: true. Contains revenueByActor, topEarners, actorsWithNoPricing (missed monetization), and pricingTierBreakdown (budget/standard/premium). |
specialistReports | object | Present when includeSpecialistReports: true. Raw signal summaries from each of the 7 orchestrated specialists (qualityAudit, costWatchdog, pricingAdvisor, planAdvice, competitorScanner, complianceScanner, marketGapFinder), each with ok, durationSeconds, itemCount, and signals[]. |
highlights | object | High-level topPriorities[] and alerts[] distilled from cross-specialist signals. |
actionPlan | object | The prioritized work queue -- see dedicated section below. Contains fixNow, optimizeNext, buildNext, considerArchiving, resolved, recommendedSequence, and a narrative summary. |
fleetHealthScore | object | Single 0-100 composite metric with score, band, change vs previous run, and drivers[] showing which dimensions moved the score. |
analyzedAt | string | ISO 8601 timestamp of when the analysis was performed |
Fleet Health Score
When the actor runs with includeSpecialistReports: true, it produces a single 0-100 Fleet Health Score composed of 5 weighted dimensions:
| Dimension | Budget | What it measures |
|---|---|---|
| Reliability | 25 pts | Weighted fleet success rate plus high-failure actor count |
| Cost | 20 pts | Cost anomalies, budget breaches, runaway spending |
| Quality | 20 pts | Fleet-wide quality score gap vs target (90+) |
| Compliance | 15 pts | PII / ToS / regulatory risk signals per actor |
| Revenue | 20 pts | Unmonetized high-volume actors + underpriced actors |
The score comes with a band (critical | poor | fair | good | excellent), a change delta vs the previous run (tracked automatically via KV store), and a drivers[] array explaining what contributed to or deducted from the score. This is the single number to track week over week.
Action Plan
The Action Plan is the operational work queue produced from cross-specialist signal synthesis. Every item has:
- bucket --
fixNow/optimizeNext/buildNext/considerArchiving - urgency --
critical/high/medium/low - status --
pending/acknowledged/in_progress/done(persisted across runs via acknowledgements) - trend --
new/worsening/unchanged/improving/stalled(vs previous run) - sources[] -- which specialists agreed on this item (deduped across runs)
- estimatedImpact --
{ monthlyUsd, confidence }where available - whyNow[] -- list of reasons this is urgent right now (new, trend worsening, stalled N cycles, affects top actor, $N impact)
- confidenceExplanation[] -- why the recommendation should be trusted (how many specialist signals agreed, longitudinal evidence, regression history)
- isRegression --
truewhen a previously resolved item has reappeared - unresolvedCycles -- number of consecutive runs this item has been unresolved
Plus a top-level recommendedSequence[] (dependency-ordered top 7 items the user should tackle in order), a resolved[] section showing items that disappeared since the previous run with their realizedImpact.previousMonthlyUsd, and a narrative summary with a headline, key focus, and trend line.
Acknowledgement lifecycle
The action plan becomes an actual work queue through acknowledgements. Passing acknowledgements: [{id, status, note?}] on input persists the status in the actor's KV store and applies it to the computed plan:
acknowledged/in_progress-- urgency downgraded one level so the item stays visible but doesn't dominatedone-- item expected to be resolved. If it reappears on a later run, it is flagged withisRegression: trueand forced to at leasthighurgency
This is what turns the plan from a report into something users work from instead of just read.
Modes
| Mode | Effect |
|---|---|
default | Balanced priorities (recommended) |
growth | Emphasize buildNext + revenue opportunities, downgrade cost-watchdog fixNow items to medium |
cost | Emphasize cost signals, downgrade buildNext opportunities |
stability | Emphasize quality + compliance + risk, downgrade buildNext |
weekly | Balanced output formatted for weekly review |
Modes reweight the existing signals -- they don't change which specialists run.
Programmatic Access
Python
from apify_client import ApifyClient
client = ApifyClient("apify_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxx")
run = client.actor("ryanclinton/apifyforge-fleet-analytics").call(
run_input={"apifyToken": "apify_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
)
dataset_items = client.dataset(run["defaultDatasetId"]).list_items().items
analytics = dataset_items[0]
print(f"Total actors: {analytics['totalActors']}")
print(f"30-day runs: {analytics['totalRuns30d']}")
print(f"Success rate: {analytics['successRate']}%")
print(f"Estimated revenue: ${analytics['estimatedMonthlyRevenue']}")
for actor in analytics["topActorsByRuns"][:5]:
print(f" {actor['name']}: {actor['runs30d']} runs")
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({
token: "apify_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
});
const run = await client.actor("ryanclinton/apifyforge-fleet-analytics").call({
apifyToken: "apify_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
const analytics = items[0];
console.log(`Total actors: ${analytics.totalActors}`);
console.log(`30-day runs: ${analytics.totalRuns30d}`);
console.log(`Success rate: ${analytics.successRate}%`);
console.log(`Estimated revenue: $${analytics.estimatedMonthlyRevenue}`);
cURL
# Start the actor run
curl -X POST "https://api.apify.com/v2/acts/ryanclinton~apifyforge-fleet-analytics/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"apifyToken": "apify_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxx"}'
# Fetch results from the default dataset (use the defaultDatasetId from the run response)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN"
How It Works
ApifyForge Fleet Analytics executes a multi-stage pipeline to build your fleet overview:
-
Actor enumeration. Calls
GET /v2/acts?my=truewith pagination (100 per page) to retrieve every actor in your account. This returns basic metadata including name, ID, public/private status, and summary stats. -
Username resolution. Extracts your username from the first actor record, or falls back to the
GET /v2/users/meendpoint if needed. The username is required to query the Store API. -
Store enrichment. Calls
GET /v2/store?username=YOUR_USERNAMEwith pagination to pull Apify Store statistics. Store stats include more granular user counts (7-day, 30-day) and run counts that may differ from the actor list endpoint. -
Detail fetching. For each actor, calls
GET /v2/acts/{actorId}to retrieve full details including PPE pricing configuration, categories, and tagged builds. This is the only endpoint that exposespricingInfos. -
Run sampling. For each actor, fetches the last 100 runs via
GET /v2/acts/{actorId}/runs?limit=100&desc=true. Filters to runs started within the last 30 days and computes success/failure rates. Actors with >10% failure rate and at least 5 runs are flagged. -
Aggregation. Computes fleet-wide totals (runs, users, categories), weighted success rate, estimated revenue, and identifies stale actors (zero runs in 30 days). Ranks actors by runs and users to surface the top 10.
-
Output. Pushes the complete analytics object to the default dataset and charges one PPE event.
How Much Does It Cost?
ApifyForge Fleet Analytics uses Pay-Per-Event pricing at $0.10 per analysis.
| Scenario | Events | Cost |
|---|---|---|
| One-time fleet overview | 1 | $0.10 |
| Weekly monitoring (4x/month) | 4 | $0.40 |
| Daily monitoring (30x/month) | 30 | $3.00 |
In addition to the PPE charge, standard Apify platform compute costs apply based on memory usage and runtime. A typical analysis of 200+ actors completes in under 2 minutes using 256 MB of memory.
Tips
- Schedule regular runs. Set up a daily or weekly schedule to track trends over time. Each run creates a new dataset entry, giving you historical data for your ApifyForge dashboard.
- Investigate high-fail actors first. The
actorsWithHighFailRatearray is sorted by failure rate. Fix these to improve your fleet-wide success rate and prevent user churn. - Revenue gaps. Compare
actorsWithNoRuns30dagainst the rest. Actors with zero runs but historical traffic may need updated descriptions or bug fixes to regain users. - Category strategy. Use
categoryBreakdownto see where you are concentrated. Diversifying across categories reduces dependency on a single market segment. - Cross-reference with Quality Monitor. Pair fleet analytics with the ApifyForge Quality Monitor to correlate quality scores with run volume and revenue.
Limitations
- Run sampling limit. Only the last 100 runs per actor are sampled. For actors with very high run volumes, the 30-day failure rate may not reflect all runs.
- Revenue is estimated. Revenue calculations use
runs30d * ppePriceas a proxy. Actual revenue depends on event-level billing, which may differ from 1:1 run-to-event ratios for some actors. - Store stats lag. Apify Store statistics may be cached and lag behind real-time data by up to 24 hours.
- Single account only. This actor analyzes one Apify account per run. Multi-account analysis requires separate runs with different tokens.
- API rate limits. For very large fleets (500+ actors), the actor makes hundreds of API calls and may take several minutes. The 5-minute timeout is usually sufficient for up to 300 actors.
Frequently Asked Questions
How long does a fleet analysis take? Typically 30-120 seconds for 50-200 actors. Each actor requires 2-3 API calls (detail + runs + optional store), so a fleet of 200 actors makes roughly 400-600 API calls. The 5-minute timeout is generous for most accounts.
Is my API token stored anywhere?
No. Your API token is used only during the run to make authenticated API calls. It is not logged, stored, or transmitted to any third party. The token is marked as isSecret in the input schema, meaning Apify redacts it from logs.
Can I use this with a free Apify account? Yes. The actor works with any Apify account that has a valid API token. However, free accounts may have fewer actors and lower API rate limits.
How does the weighted success rate work? The fleet-wide success rate is weighted by run volume. An actor with 10,000 runs and 99% success rate contributes more to the fleet score than an actor with 5 runs and 50% success rate. This prevents low-traffic actors from disproportionately skewing the fleet health metric.
Integration with ApifyForge Dashboard
This actor is one of five data sources that power the ApifyForge dashboard. When connected to your ApifyForge account, fleet analytics data is automatically visualized with trend charts, actor rankings, revenue projections, and health indicators. Schedule this actor to run daily and the dashboard will show historical trends, letting you track growth and spot issues before they become problems.
Related actors
AI Cold Email Writer — $0.01/Email, Zero LLM Markup
Generates personalized cold emails from enriched lead data using your own OpenAI or Anthropic key. Subject line, body, CTA, and optional follow-up sequence — $0.01/email, zero LLM markup.
AI Outreach Personalizer — Emails with Your LLM Key
Generate personalized cold emails using your own OpenAI or Anthropic API key. Subject lines, opening lines, full bodies — tailored to each lead's role, company, and signals. $0.01/lead compute + your LLM costs. Zero AI markup.
Bulk Email Verifier — MX, SMTP & Disposable Detection at Scale
Verify email deliverability in bulk — MX records, SMTP mailbox checks, disposable detection (55K+ domains), role-based flagging, catch-all detection, domain health scoring (SPF/DKIM/DMARC), and confidence scores. $0.005/email, no subscription.
CFPB Complaint Search — By Company, Product & State
Search the CFPB consumer complaint database with 5M+ complaints. Filter by company, product, state, date range, and keyword. Extract complaint details, company responses, and consumer narratives. Free US government data, no API key required.
Ready to try Fleet Health Report — Consolidated Fleet Intelligence?
This actor is coming soon to the Apify Store.
Coming soon