Suggestions appear as you type. Use the up and down arrows to choose one and Enter to open it.

This page's audience our own tag's counts — open to see them
–Visits
–Page views
–Clicks to vendors
–Time on page
–Reading now
Clicks to vendors, by tool
  • –
Top countries
  • –
Devices
  • –

– · visits, page views and clicks counted by our own tag, which counts more than our checked analytics; every figure rounded down · how we count

JPlag review

Free#6 of 18 in Code Duplication Detection Tools

A free, syntax-aware tool for pairwise program-similarity analysis across 20 languages.

6.7/10Editor score
JPlag6.7 Visit JPlag

Reviewed by iTechGuides Editors · Editorial team · Updated Oct 2026

JPlag is a free, open-source tool that compares programs pairwise to identify source-code similarity. It is primarily suited to programming education, where instructors review student submissions, and it can also help examine duplicated software modules. Analysis runs locally on Windows, macOS, Linux, or a self-hosted environment, with source code and results kept on the local system. JPlag supports 20 programming and modeling languages and produces a report for local viewing.

Its analysis is syntax- and structure-aware rather than limited to literal text matching. The published features include detection of similarities that persist through some obfuscation or code modifications, exclusion of common starter or template code, comparisons with prior cohorts, and configurable minimum matching-token sensitivity. Results include pairwise similarity values that can be exported as CSV. Users can run JPlag through its command-line interface, integrate it through a Java API, or connect it with Maven for Java-project workflows.

JPlag fits teams that want a local, transparent comparison tool for coursework or focused similarity investigations without a hosted subscription. Its scope is narrower than platforms built around continuous engineering workflows: the category specifications show no CI pull-request reporting, duplication gates, or trend visualisation. Community support is the listed support channel, and deployment is self-hosted. Choose JPlag when pairwise, language-aware analysis and prior-cohort comparison are central requirements; consider another tool when automated pull-request checks, dashboard trends, or broader workflow controls are priorities.

JPlag pros and cons

  • Where it wins
    • Syntax-aware matching across 20 supported languages
    • Handles some obfuscation and code modifications
    • Free, open source, with CLI and Java API access
  • Where it doesn't
    • Focused on pairwise analysis rather than duplication gates
    • No CI pull-request reporting or trend visualisation
    • Self-hosted setup relies on community support

JPlag fact sheet, pricing and score →

Advertiser disclosure: iTechGuides is reader-supported. Vendors can pay for top positions in our rankings and for a place on other products' pages, and we may earn a commission when you click some links. Bought places stand at the number bought; this page and our disclosure say so. Paying vendors may get a fuller, more detailed review from our editors, and that review can change their score. How we rank.

Last updated · How we research and update