All Resources

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

Tessera DB Tutorial: Detect Communities in Your Graph with Louvain

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

Work With Us

Have a problem worth solving?