Historical results »
Source code »

Software Forge Performance Index

This webpage collects performance information about various hosted software development services. The reports are updated weekly, most recently on April 27, 2020 at 04:45 UTC, and were generated with Lighthouse 5.6.0. Patches welcome!

Disclaimer: This website is maintained by SourceHut.

Expand for details on methodology

We ran Lighthouse 5.6.0 on Alpine Linux x86_64, with the following command line:

lighthouse <url> \
    --only-categories=performance,accessibility \
    --emulated-form-factor=none \
    --throttling.cpuSlowdownMultiplier=1

The emulated mobile form factor was disabled because it's rare that a developer is coding on a mobile device — and some forges have separate mobile sites, so a separate test suite would be warranted.

We left the throttling settings at the Lighthouse default, because it's less rare that a developer is tethered to their phone or working from a community with less privileged internet access. The simulated latency also helps to reduce the variable impact of real-world latency. Additionally, simulating a low-bandwidth connection helps to draw out the differences between services more clearly.

CPU throttling is disabled to offset the effects of not having a GPU available in our testing environment. If you run these tests locally, it is recommended that you remove this constraint.

The source code is available if you wish to run these benchmarks on your own system; it takes about an hour.

0–49 50–89 90–100

All performance results

Bitbucket Codeberg GitHub GitLab Pagure SourceHut
Browsing Git repositories
Summary page 8 18 95 58 68 100
Tree (best case) 9 20 89 58 93 100
Tree (worst case) 7 0 86 0 31 100
Log (best case) 9 19 88 58 73 100
Log (worst case) 13 14 89 57 0 73
Commit 45 16 89 60 72 100
Source file (best case) 6 18 86 65 74 100
Source file (worst case) 6 0 38 44 20 85
Blame (best case) 32 13 85 46 28 n/a
Blame (worst case) 0 0 n/a 0 0 n/a
Browsing tickets/issues
Browsing 48 19 91 53 77 100
Search 32 20 90 55 80 100
Details and comments 34 4 71 41 70 100
Code review
Browsing patches 10 20 89 57 79 100
Patch discussion 42 16 81 35 38 99
Patch diff 47 8 69 0 37 99

Browsing Git repositories

Summary page

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 30 KiB 100 100 1.1 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 24 requests 453 KiB 95 98 3.1 s 2.4 s 2.4 s 2.4 s 2.4 s 50 ms HTML • JSON • stderr
Pagure 18 requests 702 KiB 68 63 4.2 s 4.0 s 4.0 s 4.8 s 5.4 s 50 ms HTML • JSON • stderr
GitLab 26 requests 1417 KiB 58 76 3.4 s 2.7 s 2.7 s 9.5 s 10.0 s 350 ms HTML • JSON • stderr
Codeberg 30 requests 1581 KiB 18 74 8.8 s 8.8 s 8.8 s 8.8 s 9.7 s 370 ms HTML • JSON • stderr
Bitbucket 48 requests 2067 KiB 8 92 9.8 s 7.5 s 7.9 s 14.2 s 14.9 s 710 ms HTML • JSON • stderr

Tree (best case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 28 KiB 100 91 1.1 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
Pagure 18 requests 503 KiB 93 96 2.7 s 2.7 s 2.7 s 2.7 s 2.7 s 30 ms HTML • JSON • stderr
GitHub 24 requests 351 KiB 89 98 2.4 s 2.4 s 2.4 s 4.1 s 4.6 s 90 ms HTML • JSON • stderr
GitLab 24 requests 1414 KiB 58 78 3.7 s 2.6 s 2.6 s 9.4 s 9.8 s 350 ms HTML • JSON • stderr
Codeberg 30 requests 1577 KiB 20 77 8.5 s 8.5 s 8.6 s 8.6 s 9.3 s 110 ms HTML • JSON • stderr
Bitbucket 46 requests 2066 KiB 9 91 9.2 s 7.8 s 8.1 s 14.2 s 14.6 s 720 ms HTML • JSON • stderr

Tree (worst case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 76 KiB 100 91 2.0 s 1.4 s 1.4 s 1.4 s 1.4 s 70 ms HTML • JSON • stderr
GitHub * 21 requests 399 KiB 86 98 3.0 s 2.7 s 2.7 s 4.2 s 4.4 s 150 ms HTML • JSON • stderr
Pagure 18 requests 1234 KiB 31 96 6.7 s 6.7 s 8.0 s 8.0 s 8.0 s 70 ms HTML • JSON • stderr
Bitbucket * 46 requests 2077 KiB 7 91 11.3 s 7.7 s 8.1 s 14.2 s 14.7 s 1,170 ms HTML • JSON • stderr
GitLab n/an/a Lighthouse was unable to reliably load the URL you requested because the page stopped responding. HTML • JSON • stderr
Codeberg n/an/a Something went wrong with recording the trace over your page load. Please run Lighthouse again. (NO_FCP) HTML • JSON • stderr
Notes

Log (best case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 31 KiB 100 91 1.1 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 29 requests 374 KiB 88 100 3.4 s 2.4 s 2.4 s 3.7 s 4.3 s 60 ms HTML • JSON • stderr
Pagure 68 requests 703 KiB 73 75 3.4 s 3.4 s 4.6 s 4.9 s 5.5 s 170 ms HTML • JSON • stderr
GitLab 31 requests 1347 KiB 58 70 3.9 s 3.1 s 3.1 s 8.1 s 8.5 s 550 ms HTML • JSON • stderr
Codeberg 30 requests 1758 KiB 19 81 8.7 s 8.7 s 8.7 s 8.7 s 9.5 s 140 ms HTML • JSON • stderr
Bitbucket 43 requests 2096 KiB 9 92 8.8 s 8.8 s 8.8 s 14.5 s 14.7 s 740 ms HTML • JSON • stderr

Log (worst case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
GitHub 36 requests 403 KiB 89 100 2.9 s 2.3 s 2.3 s 3.7 s 4.3 s 120 ms HTML • JSON • stderr
SourceHut 2 requests 36 KiB 73 91 18.3 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitLab 51 requests 1497 KiB 57 70 4.6 s 2.8 s 2.8 s 8.1 s 8.5 s 500 ms HTML • JSON • stderr
Codeberg 28 requests 1685 KiB 14 81 13.1 s 9.2 s 9.2 s 9.2 s 9.8 s 160 ms HTML • JSON • stderr
Bitbucket 39 requests 1868 KiB 13 92 7.7 s 7.7 s 7.7 s 13.0 s 13.2 s 680 ms HTML • JSON • stderr
Pagure n/an/a Something went wrong with recording the trace over your page load. Please run Lighthouse again. (NO_FCP) HTML • JSON • stderr

Commit

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 31 KiB 100 91 1.1 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 22 requests 350 KiB 89 98 3.2 s 2.4 s 2.4 s 3.8 s 4.2 s 50 ms HTML • JSON • stderr
Pagure 23 requests 781 KiB 72 61 3.1 s 2.8 s 4.2 s 5.9 s 6.3 s 240 ms HTML • JSON • stderr
GitLab 20 requests 1262 KiB 60 82 4.7 s 2.8 s 2.8 s 7.8 s 7.8 s 230 ms HTML • JSON • stderr
Bitbucket 30 requests 2573 KiB 45 93 5.7 s 3.4 s 3.4 s 3.4 s 16.1 s 540 ms HTML • JSON • stderr
Codeberg 34 requests 1840 KiB 16 88 10.0 s 9.2 s 9.2 s 9.2 s 9.7 s 210 ms HTML • JSON • stderr

Source file (best case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 54 KiB 100 91 1.2 s 1.2 s 1.2 s 1.2 s 1.2 s 20 ms HTML • JSON • stderr
GitHub 32 requests 474 KiB 86 100 3.5 s 2.6 s 2.6 s 3.7 s 4.5 s 120 ms HTML • JSON • stderr
Pagure 21 requests 888 KiB 74 93 2.9 s 2.7 s 5.2 s 5.7 s 5.7 s 240 ms HTML • JSON • stderr
GitLab 20 requests 1269 KiB 65 75 3.1 s 2.6 s 2.9 s 8.0 s 8.1 s 480 ms HTML • JSON • stderr
Codeberg 29 requests 1642 KiB 18 95 8.9 s 8.9 s 8.9 s 8.9 s 9.7 s 130 ms HTML • JSON • stderr
Bitbucket 55 requests 2587 KiB 6 98 10.3 s 7.7 s 9.5 s 11.3 s 17.5 s 700 ms HTML • JSON • stderr

Source file (worst case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 336 KiB 85 ? 4.3 s 2.6 s 2.6 s 3.8 s 3.8 s 180 ms HTML • JSON • stderr
GitLab 20 requests 1521 KiB 44 ? 5.8 s 2.6 s 2.6 s 11.1 s 11.2 s 600 ms HTML • JSON • stderr
GitHub 44 requests 844 KiB 38 ? 7.6 s 4.0 s 4.0 s 8.0 s 8.2 s 320 ms HTML • JSON • stderr
Pagure 19 requests 1157 KiB 20 ? 29.0 s 5.3 s 6.9 s 9.1 s 9.1 s 1,510 ms HTML • JSON • stderr
Bitbucket 57 requests 4394 KiB 6 98 10.6 s 7.6 s 9.5 s 11.1 s 26.9 s 730 ms HTML • JSON • stderr
Codeberg 29 requests 3592 KiB 0 ? 31.4 s 18.6 s 19.8 s 26.5 s 26.4 s 10,000 ms HTML • JSON • stderr

Blame (best case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
GitHub 31 requests 399 KiB 85 98 3.7 s 2.5 s 2.5 s 4.0 s 4.5 s 130 ms HTML • JSON • stderr
GitLab 30 requests 1521 KiB 46 83 5.2 s 2.9 s 2.9 s 10.4 s 11.1 s 1,120 ms HTML • JSON • stderr
Bitbucket 28 requests 2881 KiB 32 ? 7.6 s 4.2 s 4.2 s 4.2 s 17.3 s 550 ms HTML • JSON • stderr
Pagure 20 requests 1196 KiB 28 80 10.3 s 4.3 s 7.3 s 8.4 s 8.5 s 1,030 ms HTML • JSON • stderr
Codeberg 32 requests 1924 KiB 13 96 11.0 s 9.6 s 9.6 s 9.6 s 10.4 s 90 ms HTML • JSON • stderr
Notes

Blame (worst case)

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
Bitbucket n/an/a Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Status code: 500) HTML • JSON • stderr
Codeberg n/an/a Something went wrong with recording the trace over your page load. Please run Lighthouse again. (NO_FCP) HTML • JSON • stderr
GitLab n/an/a Lighthouse was unable to reliably load the page you requested. Make sure you are testing the correct URL and that the server is properly responding to all requests. (Status code: 500) HTML • JSON • stderr
Pagure n/an/a Something went wrong with recording the trace over your page load. Please run Lighthouse again. (NO_FCP) HTML • JSON • stderr
Notes

Browsing tickets/issues

Browsing

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 32 KiB 100 77 1.1 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 25 requests 359 KiB 91 98 2.4 s 2.4 s 2.4 s 3.8 s 4.1 s 120 ms HTML • JSON • stderr
Pagure 17 requests 613 KiB 77 86 4.2 s 3.1 s 3.1 s 4.4 s 4.9 s 80 ms HTML • JSON • stderr
GitLab 21 requests 1309 KiB 53 70 4.8 s 3.1 s 5.5 s 8.0 s 8.0 s 290 ms HTML • JSON • stderr
Bitbucket 38 requests 2484 KiB 48 93 6.1 s 2.9 s 2.9 s 2.9 s 15.5 s 540 ms HTML • JSON • stderr
Codeberg 41 requests 1876 KiB 19 76 8.9 s 8.9 s 8.9 s 8.9 s 9.3 s 110 ms HTML • JSON • stderr
Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 32 KiB 100 77 1.3 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 25 requests 359 KiB 90 98 2.5 s 2.4 s 2.4 s 3.8 s 4.0 s 110 ms HTML • JSON • stderr
Pagure 17 requests 572 KiB 80 86 3.9 s 2.9 s 2.9 s 4.3 s 4.9 s 70 ms HTML • JSON • stderr
GitLab 20 requests 1308 KiB 55 62 4.7 s 3.4 s 3.4 s 7.9 s 7.9 s 210 ms HTML • JSON • stderr
Bitbucket 32 requests 2696 KiB 32 93 7.6 s 4.1 s 4.1 s 4.7 s 16.2 s 550 ms HTML • JSON • stderr
Codeberg 41 requests 1874 KiB 20 82 8.6 s 8.6 s 8.6 s 8.6 s 9.3 s 110 ms HTML • JSON • stderr

Details and comments

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 55 KiB 100 93 1.4 s 1.2 s 1.2 s 1.2 s 1.2 s 20 ms HTML • JSON • stderr
GitHub 47 requests 672 KiB 71 98 5.6 s 2.8 s 2.8 s 4.3 s 5.1 s 80 ms HTML • JSON • stderr
Pagure 37 requests 3519 KiB 70 88 3.3 s 3.2 s 3.2 s 5.6 s 6.9 s 90 ms HTML • JSON • stderr
GitLab 52 requests 2080 KiB 41 65 5.6 s 3.5 s 3.5 s 10.2 s 10.7 s 1,140 ms HTML • JSON • stderr
Bitbucket 34 requests 2719 KiB 34 92 7.2 s 4.1 s 4.1 s 4.1 s 16.4 s 540 ms HTML • JSON • stderr
Codeberg 52 requests 2635 KiB 4 82 15.1 s 11.2 s 11.2 s 13.0 s 14.5 s 150 ms HTML • JSON • stderr

Code review

Browsing patches

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 29 KiB 100 70 1.3 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 25 requests 357 KiB 89 98 3.1 s 2.4 s 2.4 s 3.8 s 4.1 s 90 ms HTML • JSON • stderr
Pagure 17 requests 546 KiB 79 86 4.4 s 2.8 s 2.8 s 4.1 s 4.6 s 80 ms HTML • JSON • stderr
GitLab 20 requests 1293 KiB 57 70 5.6 s 2.7 s 2.7 s 7.6 s 7.6 s 210 ms HTML • JSON • stderr
Codeberg 41 requests 1872 KiB 20 82 8.6 s 8.6 s 8.6 s 8.6 s 9.3 s 120 ms HTML • JSON • stderr
Bitbucket 81 requests 2118 KiB 10 93 8.7 s 8.0 s 8.1 s 13.7 s 13.6 s 730 ms HTML • JSON • stderr

Patch discussion

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut 2 requests 33 KiB 99 91 2.8 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 27 requests 501 KiB 81 98 5.0 s 2.4 s 2.4 s 3.8 s 4.2 s 70 ms HTML • JSON • stderr
Bitbucket 49 requests 2779 KiB 42 86 7.4 s 3.1 s 3.1 s 3.1 s 17.2 s 630 ms HTML • JSON • stderr
Pagure 38 requests 5540 KiB 38 86 5.8 s 5.4 s 5.4 s 7.9 s 8.2 s 120 ms HTML • JSON • stderr
GitLab 49 requests 3288 KiB 35 76 6.3 s 2.9 s 7.8 s 7.8 s 13.6 s 620 ms HTML • JSON • stderr
Codeberg 42 requests 1692 KiB 16 88 9.0 s 9.0 s 9.3 s 9.3 s 10.2 s 230 ms HTML • JSON • stderr

Patch diff

Page tested Performance Accessibility Speed Index FCP FMP First Idle TTI Max FID Full report
SourceHut * 2 requests 33 KiB 99 91 2.9 s 1.1 s 1.1 s 1.1 s 1.1 s 20 ms HTML • JSON • stderr
GitHub 20 requests 507 KiB 69 98 4.9 s 3.2 s 3.2 s 5.1 s 5.5 s 140 ms HTML • JSON • stderr
Bitbucket * 49 requests 2736 KiB 47 86 6.0 s 3.0 s 3.0 s 3.0 s 17.1 s 630 ms HTML • JSON • stderr
Pagure * 38 requests 5540 KiB 37 89 5.9 s 5.4 s 6.5 s 7.9 s 8.2 s 150 ms HTML • JSON • stderr
Codeberg 37 requests 2144 KiB 8 95 11.2 s 11.2 s 11.8 s 11.8 s 12.7 s 100 ms HTML • JSON • stderr
GitLab n/an/a Lighthouse was unable to reliably load the URL you requested because the page stopped responding. HTML • JSON • stderr
Notes