Chrome Web Store "Manifest version 2 is no longer accepted" in CI
The Chrome Web Store no longer accepts uploads with "manifest_version": 2. The package is rejected at submission until the manifest is migrated to V3.
What this error means
The upload fails with an itemError stating Manifest V2 is no longer supported or accepted for this extension.
chrome-webstore-upload
{
"uploadState": "FAILURE",
"itemError": [
{ "error_detail": "Manifest version 2 is no longer supported. Please migrate to
manifest version 3." }
]
}Common causes
The manifest still declares manifest_version 2
The package was built from a V2 manifest, which the store will not accept for new uploads.
Build output lagged behind a source migration
Source was migrated to V3 but the shipped artifact was built from an old branch or cache still on V2.
How to fix it
Set manifest_version to 3 and migrate the manifest
- Change
manifest_versionto 3. - Replace V2-only keys with their V3 equivalents (background, action, host_permissions).
- Rebuild and re-upload.
manifest.json
"manifest_version": 3Verify the built manifest is V3 in CI
Fail the build if the packaged manifest still declares version 2.
.github/workflows/ci.yml
- run: |
v=$(node -p "require('./dist/manifest.json').manifest_version")
test "$v" = "3" || { echo "manifest must be V3"; exit 1; }How to prevent it
- Assert manifest_version is 3 in CI before upload.
- Build from the migrated branch, not a cached V2 artifact.
- Track Chrome MV2 deprecation dates for your channels.
Related guides
Manifest V3 "background.scripts is not supported" in CIFix Manifest V3 "background.scripts requires manifest version of 2 or lower" in CI - persistent background sc…
Manifest V3 "background.service_worker" required / not found in CIFix Manifest V3 service worker errors in CI - the background service_worker is missing from the manifest or p…
Manifest V3 "browser_action is deprecated, use action" in CIFix Manifest V3 "browser_action is deprecated, use action instead" in CI - V3 merges browser_action and page_…