See what's hiding in your graph

Drop a graph and explore it directly in your browser. Filter, search, colour, and size by any property to find what matters. Your graph data never leaves your machine.

No install No signup 100% private Free & open source

What you get

A full graph explorer — not a toy. Loads big, stays interactive, and your graph data never touches a server.

100% local, 100% yours

Your graph file is never uploaded. Everything runs in the browser via WebGL and Web Workers — works offline, on a plane, or inside a firewall. Architected so sensitive graph data never leaves your machine.

Up to a million nodes

GPU rendering plus a GPU force simulation. Pan, zoom, rotate, and lay out graphs on a regular laptop at sizes that freeze CPU-based tools. Streaming parser engages at 200 MB + so even a GB of JSON loads without a spinner of doom.

Find what matters

Filter by number, string, date, boolean, or tag list — combined with AND logic and a live match count. Autocomplete search by id or label. Colour and size nodes by any property, with log-scale toggles for power-law data and 24 built-in palettes.

Drag, drop, done

Accepts JSON, CSV / TSV edge lists, CSV / TSV nodes + edges pairs (via labelled drop slots), GraphML, and GEXF. Export back to any of the five formats with positions preserved — lossless round-trip in JSON, GEXF, and CSV pair.

What people visualize with Knotviz

Your graph data never leaves the browser. No graph-file uploads, no accounts, no cloud — just drag, drop, and see what's hiding in your graph.

Fraud & financial crime

Fraud analysts, AML investigators, compliance

Trace money through shell companies, shared addresses, and synthetic identities. Filter by transaction amount and date to surface fraud rings that are invisible in spreadsheets — with regulated graph data that never leaves your machine.

Social network analysis

Researchers, journalists, marketers

Map communities, echo chambers, and bridge figures across Twitter, Reddit, or any platform export. Color by sentiment or activity to spot influence patterns that only emerge at the network level.

Cybersecurity & threat hunting

SOC analysts, incident responders, security engineers

Load SIEM exports to trace lateral movement, map C2 infrastructure, and correlate events across hosts. Filter by timestamp and severity to reconstruct attack paths from millions of log entries — entirely offline.

Knowledge graphs & RAG pipelines

Data engineers, ML practitioners, AI teams

Inspect and debug the knowledge graph powering your AI system. Spot disconnected subgraphs, miscategorized entities, and missing relationships before they become hallucinations. Filter by type or confidence to validate data quality at scale.

Infrastructure & supply chain

DevOps, platform engineers, architects

Drop in your package-lock.json, Terraform state, or SBOM export to map every dependency. Find circular references, single points of failure, and the one transitive package half your system depends on.

Investigations & OSINT

Journalists, OSINT analysts, due diligence teams

Connect the dots between people, companies, and assets — the way the Panama Papers were cracked. Map ownership chains and communication patterns without installing anything or sending your graph data to a server.

How it works

1

Drop

Drag any JSON, CSV, GraphML, or GEXF file onto the canvas. Your graph file stays in your browser — nothing is uploaded, nothing is indexed.

2

Explore

Pan, zoom, rotate, and run the GPU force-directed simulation to untangle the graph. Press space to toggle physics; hover nodes to see labels; click to see every property.

3

Analyse

Filter by property, search by label, colour by category, size by magnitude. Inspect distributions in the stats panel. Export the laid-out graph back to any of the five formats when you're done.

Drop in whatever you have

Five input formats with typed properties, edge weights, and optional positions. Type inference fills in the rest.

JSON CSV / TSV edge list CSV / TSV nodes + edges GraphML GEXF

Two-file CSV / TSV pair? Drop into the labelled Nodes and Edges slots on the drop zone — one file each, any order.

Minimum JSON looks like this — everything beyond id, source, and target is optional:

transactions.json
{
  "version": "1",
  "nodes": [
    { "id": "acme",  "label": "Acme Corp",  "properties": { "type": "company", "risk": 82 } },
    { "id": "sh-42", "label": "Shell #42",  "properties": { "type": "shell",   "risk": 95 } },
    { "id": "jdoe",  "label": "John Doe",   "properties": { "type": "person",  "risk": 40 } }
  ],
  "edges": [
    { "source": "acme", "target": "sh-42", "weight": 2.4 },
    { "source": "jdoe", "target": "acme",  "weight": 0.1 }
  ]
}

Full schema in the app's schema dialog. CSV header suffixes like age:number or joined:date declare types explicitly; everything else is inferred.

Why Knotviz?

Most graph tools need a server, an account, or a 30-minute install — and then ask you to hand over your data. Knotviz opens in a tab.

Feature Knotviz Gephi Cosmograph Graphistry
Setup Open a tab 30-min Java install Sign-in Python + cloud setup
Data location Never leaves your browser Local Browser (DuckDB-WASM) Server-side
GPU rendering WebGL in browser No (CPU only) WebGL in browser Server-side
Practical size Up to ~1M nodes on a laptop ~100k before it struggles Millions (client-side) Large (via cloud)
Filter & search Numbers, strings, dates, bools, tags + label search Basic DuckDB queries SQL
Cost Free & open source Free Free tier + paid Free tier + paid

Gephi, Cosmograph, and Graphistry are trademarks of their respective owners. Comparisons reflect publicly available information and may change — check each vendor's site for current pricing and capabilities.

Frequently asked questions

What file formats does Knotviz accept?

JSON, CSV and TSV edge lists, CSV and TSV nodes + edges pairs, GraphML, and GEXF. Type inference fills in property types automatically — or declare them explicitly with CSV header suffixes like age:number or joined:date.

How large a graph can Knotviz handle?

Up to around a million nodes on a regular laptop, with GPU-accelerated rendering and force-directed layout. Below 500k nodes everything is instant; past ~1M the simulation grid saturates and pan/zoom framerate drops. A streaming parser engages at 200 MB + so even a gigabyte of JSON loads without freezing the tab.

Does Knotviz upload my graph file?

No. Your graph file stays in your browser — Knotviz parses, renders, and filters entirely client-side via WebGL and Web Workers. No accounts, no server for graph data, works offline, on a plane, or inside a firewall.

Is Knotviz free?

Yes. Knotviz is free and open source under the MIT license. Source is on GitHub.

Do I need a dedicated GPU?

No. Any machine with a WebGL-capable browser works, including integrated graphics. A dedicated GPU helps most with graphs in the hundreds of thousands to millions of nodes.

Your graph, your browser, your data.

Open Knotviz, drop a file, start exploring. Your graph file is never uploaded — not now, not ever.

Start exploring