SupercovCompare
← All comparisons

Code coverage · Comparison

Codecov vs Coveralls

Both turn your coverage report into pull-request checks. Codecov charges per user, Coveralls per repository, so team size decides. Prices and features compared.

Codecov or Coveralls?

Both take the coverage report your tests already write and turn it into pull-request checks, comments and history. Neither measures coverage. Both are free for open source.

The clearest difference is how they charge for private repositories: Codecov per user, Coveralls per repository with unlimited users. A large team with few repositories pays less on Coveralls. A small team with many repositories pays less on Codecov. Codecov does more for monorepos and test results; Coveralls does less and is simpler.

What private repositories cost

CodecovCoveralls
Open sourceFreeFree
Free private use1 user, 250 uploads a month30-day trial
Paid plansTeam: $5 a user a month, up to 10 users. Pro: $12 a user a month$10 a month for 1 repository, $50 for 10, $100 for 20, $200 for 40, $400 unlimited
UsersCountedUnlimited on every plan
Self-hostedEnterprise planEnterprise On-Prem, $25 a user a month

Three examples at those prices:

  • 3 developers, 30 repositories: $15 a month on Codecov Team, $200 on Coveralls.
  • 10 developers, 10 repositories: $50 on either.
  • 20 developers, 5 repositories: $240 on Codecov Pro, $50 on Coveralls.

Prices are from the Codecov and Coveralls pricing pages on October 12, 2026. Check them for current figures and for limits such as uploads a month.

Reports they read

Both read lcov, Cobertura XML and JaCoCo XML, among others. See Codecov’s list and the formats of Coveralls’ reporter. If you are choosing a format, see lcov vs Cobertura.

Features that differ

CodecovCoveralls
Several CI jobs for one commitMerged automaticallyJobs are marked parallel, then a webhook closes the build
Parts of one repositoryFlags set at upload, and components defined by pathFlags per job
Jobs that did not runCarryforward flagsCarryforward flags
Beyond coverageFailed and flaky tests from JUnit XML, and bundle analysisCoverage only

On Codecov some of these depend on the plan: flags and project coverage are listed under Pro.

The report comes first

Either service shows what your coverage tool wrote, and no more. If the report has no branch data, neither dashboard has it. Neither shows MC/DC or which test covered a line: Cobertura has no field for either, and lcov records MC/DC only since version 2.

Where Supercov fits

Supercov measures coverage; it is not a dashboard. It runs your test command and writes a report either service reads:

npx supercov -- npm test
npx supercov runs report --format lcov --output coverage/lcov.info

It can also gate a pull request inside your own CI job, with no account and nothing uploaded:

npx supercov runs check --min-lines 90 --min-branches 80
npx supercov runs patch --base origin/main --min-lines 100

The first fails the job below a floor. The second checks only the lines the change touches. See Codecov vs Supercov for how the two work together.