Docs and articles
R-79
Technology
Tessera DB Tutorial: Detect Communities in Your Graph with Louvain
Find tightly connected clusters of entities — for fraud rings, customer segments, document topics, anything where 'who hangs out together' matters.
PAR2 Labs
August 29, 2026
3 min

Louvain is a modularity-optimising community detection algorithm. It finds clusters of nodes that are more densely connected to each other than to the rest of the graph — the algorithm of choice for most "who's coordinating with whom" questions.
01
Before you start
Tier
01
Community detection is part of Graph Data Science, an Enterprise feature.
02
Step 1: Build the projection
Project your data into a graph for analysis. Because community membership is symmetric, treat the projection as undirected.
03
Step 2: Run Louvain
Run Louvain over the projection with a resolution parameter (1.0 is a good starting point) and an iteration cap. Every node comes back tagged with a community id — same id means same community.
Every node comes back tagged with a community id — same id means same community.
04
Step 3: Interpret the output
Group the nodes by community id and sort the groups by size to see the structure: a few large communities, a long tail of small ones. The largest and the tightest are usually the most interesting.
05
Step 4: Tune the resolution parameter
The resolution parameter controls cluster granularity:
Below 1.0 — fewer, larger communities; good for broad themes.
Around 1.0 — the default; usually a sound starting point.
Above 1.0 — more, smaller communities; good for finding tight rings inside larger networks.
06
Use case: fraud rings
Build the graph from transaction endpoints (sender, receiver) and run Louvain. Communities with high internal density and low external density are candidate fraud rings — accounts that transact with each other far more than with the broader population.
07
Other algorithms in this family
Label propagation — faster, less precise.
Connected components — grouping by reachability rather than modularity.
Triangle count — local clustering density.
Key Takeaways
01
Built an undirected projection, since community membership is symmetric.
02
Run Louvain with a resolution parameter and an iteration cap, tagging every node with a community id.
03
Grouped and sorted communities by size, and tuned the resolution for broader or tighter clusters.
04
Applied the method to fraud rings, building the graph from sender and receiver endpoints.
PAR2 Labs · Technology
Talk to us