GitLab Self-Managed


Covered in this doc

  • Installing Percy's GitLab Self-Managed integration
  • Linking Percy projects with GitLab repositories

To integrate with, see our documentation.


GitLab Self-Managed behind a firewall

If you are running GitLab Self-Managed behind a firewall, see Enterprise firewalls. If that doesn't work, fill out the form below

Installing the Percy GitLab Self-Managed integration

Create a GitLab Bot User


Note: Percy uses a personal access token to update commit statuses on GitLab. These API calls are made on behalf of a GitLab user that you specify when you generate a personal access token. You may wish to create a separate GitLab user that has access to only the GitLab projects you wish to integrate with Percy. This allows you to restrict the scope of the API access you provide us and make it clear to your organization how commit statuses are being set.

Create a new user on in your GitLab organization. We recommend calling it “Percy”, so it’s easily identified.

In GitLab, go to the project you want to integrate Percy with and grant your bot user “Developer” access to it.

  1. Go to<orgname>/<project>/project_members
  2. Grant the bot user you created above with access to your projects using the role “developer,” like this:

The end result should look like this:


Generate a Personal Access Token

Once you have created a bot user and invited them to the GitLab project you intend to use with Percy, generate a personal access token with the following values:


Add the Personal Access Token and GitLab Host to Percy

You’re ready to add your GitLab details to Percy. Go to your organization Settings > Integrations and paste the personal access token and GitLab Host into the form field.


You’ve now installed the GitLab integration! The next step is to connect GitLab repositories to your Percy projects.

Linking Percy projects and GitLab repositories

You can manage your linked repositories by editing the settings for the GitLab self-managed integration under Organization Settings > Integrations.


Done! 🚀 You’re ready to start running visual testing alongside code reviews.

Support for GitLab Self-Managed behind a firewall

If you are running GitLab Self-Managed behind a firewall, reach out to our sales team for assistance.


If you find your integration is not working as expected, check the integration logs on the GitLab Enterprise integration page. These can be found by selecting "Edit settings" under Organization Settings > Integrations.
The logs table will show you all the communication Percy has recently had with GitLab Enterprise. If there is not a recent log line, you can click the "Run health check" button to create a new log from GitLab Enterprise.

What's next

Learn about our additional workflow features like snapshot carryforward, auto-approved branches, baseline picking, and more.