{"adoption": {"forks": 178, "observed_at": "2026-08-28T04:06:37.137669+00:00", "stars": 2321}, "canonical_url": "https://ross.abutalabs.com/products/akvorado", "card": {"archived": false, "artifact_type": "service", "description": "Flow collector, enricher and visualizer", "domain": ["networking", "monitoring", "analytics", "self-hosted"], "enriched": true, "function": ["monitoring", "analytics", "data-visualization", "streaming", "search-engine"], "health_score": 100, "homepage": "https://demo.akvorado.net", "language": "Go", "license": "AGPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["akvorado/akvorado"], "name": "akvorado/akvorado", "platform": ["self-hosted", "go"], "pushed_at": "2026-08-24T04:59:04+00:00", "repo": "akvorado/akvorado", "stars": 2321, "tags": ["netflow", "ipfix", "sflow", "clickhouse", "kafka", "flow-collector", "network-observability", "snmp", "geoip-enrichment", "grafana-plugin", "traffic-analysis", "sankey-diagrams", "devops", "docker", "web-server", "linux"], "topics": ["collector", "netflow", "sflow", "ipfix", "clickhouse", "kafka"], "urls": [], "use_cases": ["collect and analyze netflow traffic from routers", "visualize network traffic with sankey diagrams", "self-hosted network flow monitoring", "enrich ipfix flows with interface names and geolocation", "store network flow data in clickhouse for analysis", "monitor isp or datacenter traffic patterns", "export netflow data to grafana dashboards"], "what_it_is": "Akvorado is a self-hosted network flow collector, enricher, and visualizer that ingests NetFlow/IPFIX and sFlow data, enriches it with SNMP interface names and IP geolocation, and stores it in ClickHouse. It provides a web console with timeseries and Sankey graphs for exploring network traffic, plus a Grafana plugin.", "when_to_avoid": ["your network devices do not export NetFlow, IPFIX, or sFlow", "you only need simple SNMP-based bandwidth graphs rather than per-flow analysis", "you cannot operate the ClickHouse and Kafka dependencies", "you need a lightweight agent-based solution rather than a centralized collector", "you require a permissive license - Akvorado is AGPLv3"], "when_to_choose": ["you need to collect and analyze NetFlow/IPFIX or sFlow exports from network equipment", "you want a self-hosted alternative to commercial flow analyzers like Kentik or ElastiFlow", "you need flow enrichment with SNMP interface names and IP geolocation", "you want timeseries and Sankey visualizations of traffic without building your own stack", "you run an ISP, datacenter, or large network and need per-flow visibility"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/akvorado", "repo": "akvorado/akvorado", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:37.137669+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:38:46.658486+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1f12693b9c8343ccf6c6bbb5902f140a60adce0fa52a1c15fa4638936a4e9a6a", "fetched_at": "2026-08-28T04:06:37.137669+00:00", "kind": "readme", "missing": false, "url": "https://github.com/akvorado/akvorado"}, {"content_hash": "70aafd1ee63d6b709475914e718cd29ff5633627deee5d5099f77433d05ddb62", "fetched_at": "2026-08-29T10:18:53.119808+00:00", "kind": "homepage", "missing": false, "url": "https://demo.akvorado.net"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 97}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1527, "days_push": 9, "days_rel": 21, "gap_med": 28.0, "n_releases_24m": 17}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}