GitHub changes App installation token format: from 40 to ~520 characters, breakage risk for CI/CD pipelines
GitHub begins rolling out a new App installation token format on April 27, 2026. The old 40-character format is replaced by a JWT format of ~520 characters with the prefix ghs_APPID_JWT. Phase 1 (April 27 – mid-May) covers GitHub Actions and featured integrations; Phase 2 (mid-May – end of June) covers all App tokens. Developers must expand DB columns to 520+ characters and remove regex/length checks.
This article was generated using artificial intelligence from primary sources.
GitHub announced on April 24, 2026 a significant change to the App installation token format that begins phased rollout as early as April 27, 2026. The change has the potential to break integrations and CI/CD pipelines that have hard-coded the current 40-character token length — which includes a large number of custom scripts and database schemas in production.
What exactly is the new format?
The old format looks like this: ghs_ + 36 alphanumeric characters = 40 characters total. The new format is structured as a JWT (JSON Web Token) with the prefix ghs_APPID_JWT and a total length of approximately 520 characters, with the note that it will “vary based on the data stored within it” — in other words, the length is not fixed but depends on the content. JWT is a standardized format (RFC 7519) for secure JSON data transmission, cryptographically signed so that integrity can be verified without a round-trip to the server. According to GitHub’s announcement, the JWT “contains details about the token such as the target installation, the application, and basic validation details”.
Who is affected and when?
GitHub divides the rollout into two phases. Phase 1 (April 27 – mid-May 2026) covers GitHub Actions GITHUB_TOKEN and so-called featured integrations such as Dependabot, Slack and Teams integrations. Phase 2 (mid-May – end of June 2026) covers all App installation tokens, including users of GitHub Enterprise Cloud and environments with Data Residency requirements (EU, Australia, other regions). In practice — every organization using GitHub Apps for authentication in CI/CD pipelines should prepare immediately.
What MUST developers do?
GitHub is very explicit about three key actions:
- Database schema: “Any database columns for access tokens can fit at least a 520 character string” — verify that all columns storing tokens support at least 520 characters. A typical
VARCHAR(40)orVARCHAR(64)will no longer work. - Regex checks: Remove all regex patterns like
ghs_[A-Za-z0-9]{36}that were used to validate token format. The new format contains underscores and characters that do not match the old pattern. - Length checks: “Your apps do not take a dependency on access tokens being a certain length” — any logic that assumes a fixed length of 40 characters must be revised.
Why is GitHub doing this?
Security and performance motivation. The JWT format enables stateless validation — the server does not need to perform a DB lookup on every call to verify token validity; it can verify the signature locally. GitHub states that the change “improves token issuance performance under increased load” and delivers “higher reliability at scale”. In other words — GitHub is preparing its authentication infrastructure for the growth in call volume coming from the explosion of AI agents and automated bot integrations.
What if I ignore the change?
Applications that assume the old length will start producing errors upon first encountering a new token. The most common symptoms: DB INSERT failures (truncated string), regex validation rejections, Authorization header parser errors. It is advisable to proactively audit all repositories and custom Actions in the coming days before the rollout catches up with your organization.
Frequently Asked Questions
- What exactly is changing with GitHub App installation tokens?
- The old 40-character format (ghs_ + 36 alphanumeric characters) is replaced by a JWT-based format of the form ghs_APPID_JWT, approximately 520 characters long. The JWT contains details about the installation, the application and basic validation information.
- When does the rollout begin?
- Phase 1 runs from April 27 to mid-May 2026 and covers GitHub Actions GITHUB_TOKEN and featured integrations (Dependabot, Slack, Teams). Phase 2 runs from mid-May to end of June 2026 and extends the change to all App installation tokens, including GitHub Enterprise Cloud and Data Residency environments.
- What must a developer do?
- Verify that database columns for tokens can hold a string of at least 520 characters, remove any regex patterns like 'ghs_[A-Za-z0-9]{36}' and any length checks that assume a fixed length of 40 characters.
Related news
arXiv:2605.22681: CUSP benchmark shows frontier models cannot reliably predict scientific breakthroughs
arXiv:2605.22337: Meta-Soft introduces KV cache compression via composable meta-tokens and learnable orthogonal bases
arXiv:2605.22664: WorkstreamBench tests LLM agents on end-to-end spreadsheet tasks in finance — and frontier models fail