Knowledge Base
Comprehensive Chrome Web Store policy reference. Search by error code, category, severity, or keyword.
Manifest Version Check
Critical Manifestmanifest_version
Extensions must declare manifest_version: 3 for MV3 compliance. Manifest V2 extensions are no longer accepted by the Chrome Web Store.
Rule ID
manifest_version
Policy Reference
Chrome Web Store - Manifest V3💡 How to Fix
Update your manifest.json to include "manifest_version": 3 and migrate your extension from MV2 to MV3. This may require updating background scripts to service workers and adjusting permission declarations.
Missing Required Fields
Medium Manifestmissing_fields
Manifest must include required fields: name and version. These are mandatory for all Chrome extensions.
Rule ID
missing_fields
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Add the missing fields to your manifest.json. Example: {"name": "My Extension", "version": "1.0.0"}
Remote Code Execution
Critical Securityremote_eval_new
Extensions cannot execute remote code or use eval(), new Function(), or similar dynamic code execution. MV3 strictly prohibits remote scripts and dynamic code evaluation for security reasons.
Rule ID
remote_eval_new
Policy Reference
Chrome Web Store - Remote Code💡 How to Fix
Remove all eval() calls, new Function() usage, and remote script loading. Bundle all code within your extension package. Use static functions and logic instead of dynamic code generation.
Excessive Permissions
High Permissionspermissions
Extensions should only request permissions that are necessary for functionality. Excessive or unused permissions can lead to rejection. Sensitive permissions like tabs, history, or <all_urls> require strong justification.
Rule ID
permissions
Policy Reference
Chrome Web Store - Permissions💡 How to Fix
Request only the narrowest permissions necessary. Remove unused permissions from manifest.json. Use optional permissions for features that aren't core to your extension. Document why each permission is needed in your store listing.
Privacy Policy
High Privacyprivacy
Extensions that collect user data must provide a privacy policy. This includes any data collection, storage, or transmission. The policy must be accessible via HTTPS and clearly describe what data is collected and how it's used.
Rule ID
privacy
Policy Reference
Chrome Web Store - User Data💡 How to Fix
Create a privacy policy that describes what data you collect, how it's used, and how it's stored. Host it on an HTTPS URL and add the link to your Chrome Web Store listing. If you don't collect data, you may still need a policy stating that.
Code Obfuscation
High Code Qualityobfuscation
Extensions must maintain code readability. Excessive obfuscation is not allowed. While minification is acceptable, deliberate obfuscation that makes code unreadable violates Chrome Web Store policies.
Rule ID
obfuscation
Policy Reference
Chrome Web Store - Code Readability💡 How to Fix
Avoid obfuscators that generate _0x-prefixed variables or extremely long lines. Use standard minification tools that preserve code structure. Provide a non-obfuscated debug version if requested.
Insecure HTTP Calls
High Securityhttp_calls
All network requests must use HTTPS. HTTP URLs are not allowed for security reasons. All data transmission must be encrypted.
Rule ID
http_calls
Policy Reference
Chrome Web Store - User Data💡 How to Fix
Replace all http:// URLs with https://. Ensure all network requests, API calls, and resource loading use secure protocols.
Content Security Policy
Medium Securitycsp_strictness
Extensions should implement strict Content Security Policies. Avoid unsafe-inline and unsafe-eval directives which weaken security.
Rule ID
csp_strictness
Policy Reference
Chrome Web Store - CSP💡 How to Fix
Remove unsafe-inline and unsafe-eval from your CSP. Use nonces or hashes for inline scripts. Move inline event handlers to external JavaScript files.
Dynamic Script Injection
High Securitydynamic_script
MV3 forbids dynamic loading of remote code via createElement('script') or document.write. All scripts must be bundled in the extension package.
Rule ID
dynamic_script
Policy Reference
Chrome Web Store - Remote Code💡 How to Fix
Remove dynamic script injection. Bundle all scripts within your extension and avoid document.write for scripts. Use static script tags in HTML files.
Telemetry and Tracking
Medium Privacytelemetry
Telemetry and tracking must be disclosed in privacy policy and allow user opt-out. Common tracking services include Google Analytics, Mixpanel, Segment, and others.
Rule ID
telemetry
Policy Reference
Chrome Web Store - User Data💡 How to Fix
Disclose analytics usage clearly in your privacy policy. Provide users with an opt-out mechanism. Consider using privacy-friendly analytics or making tracking optional.
Third-Party Libraries
Medium Securitythird_party_libs
Third-party libraries should be kept up to date and free of known vulnerabilities. Outdated libraries with CVEs pose security risks.
Rule ID
third_party_libs
Policy Reference
Chrome Web Store - Third-Party💡 How to Fix
Update libraries to the latest secure versions. Remove unused or vulnerable libraries. Regularly audit dependencies for known CVEs using tools like npm audit or similar.
Metadata Completeness
Medium Metadatametadata
Extensions must provide enough information in description and metadata for users to understand functionality. Missing icons or descriptions reduce listing quality.
Rule ID
metadata
Policy Reference
Chrome Web Store - Enough Information💡 How to Fix
Add a meaningful description (30+ characters) and icons of sizes 16, 32, 48, and 128 pixels to your manifest. Ensure the description accurately reflects your extension's functionality.
Prohibited Content
Critical Contentprohibited
Detect content that violates Chrome Web Store policies (gambling, porn, hate, violence). Such content is strictly prohibited and will result in immediate rejection.
Rule ID
prohibited
Policy Reference
Chrome Web Store - Prohibited Content⚠️ Critical Issue
Remove all prohibited content immediately. The Chrome Web Store bans gambling, pornography, violent or hateful material. Extensions containing such content will be rejected.
Packaging Errors
Medium Packagingpackaging
Files referenced in manifest must exist in the package. Missing files will cause the extension to fail at runtime.
Rule ID
packaging
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Include all files referenced in your manifest (service_worker, content_scripts, popup files, icons, etc.) in your extension package. Verify file paths match exactly.
Minimum Functionality
Low Functionalityminimum
Extensions must provide some functionality and include JavaScript files. Empty or non-functional extensions will be rejected.
Rule ID
minimum
Policy Reference
Chrome Web Store - Minimum Functionality💡 How to Fix
Ensure your extension includes functional code (JavaScript files) and provides a clear benefit to users. Avoid placeholder or empty extensions.
Manifest Cross Consistency
Medium Manifestmanifest_consistency
Validates content_scripts patterns, service worker usage, popup files and icon coverage. Ensures manifest structure is correct for MV3.
Rule ID
manifest_consistency
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Ensure content_scripts match patterns start with valid schemes (http, https, file, *). Verify service_worker file exists. Remove deprecated scripts property when using service_worker. Include recommended icon sizes (16, 32, 48, 128).
Missing Permissions
Medium Permissionsapi_missing_permissions
Chrome APIs used without corresponding manifest permissions. This will cause runtime errors when the extension tries to use these APIs.
Rule ID
api_missing_permissions
Policy Reference
Chrome Web Store - Permissions💡 How to Fix
Declare the corresponding permissions in manifest.json for each Chrome API you use (e.g., chrome.tabs requires 'tabs' permission). Remove API calls if permissions are not needed.
Security Hardening
Medium Securitysecurity_hardening
Check CSP presence, unsafe directives, and innerHTML usage in HTML/JS files. Security hardening helps protect against XSS attacks.
Rule ID
security_hardening
Policy Reference
Chrome Web Store - Security💡 How to Fix
Add CSP meta tags to HTML files. Remove unsafe-inline and unsafe-eval directives. Sanitize inputs when using innerHTML. Use nonces or hashes for inline scripts.
Debug/Test Artifacts
Low Code Qualitydebug_artifacts
Detect console logs, localhost, TODO, .map files and other debug code. These should be removed before publishing to production.
Rule ID
debug_artifacts
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Remove console.log statements, debug code, localhost references, TODO markers, and .map files before publishing. Use build tools to strip debug code in production builds.
Description vs Reality
Medium Metadatadescription_mismatch
Compare manifest description against permissions and API usage for potential misrepresentation. Deceptive descriptions violate Chrome Web Store policies.
Rule ID
description_mismatch
Policy Reference
Chrome Web Store - Deceptive Practices💡 How to Fix
Ensure your description accurately reflects functionality and permissions used. If description claims simplicity but requests sensitive permissions, either update the description or remove unnecessary permissions.
URL Overrides
Medium Functionalityoverrides
Warn if extension overrides Chrome new tab or search settings. These overrides must provide clear value and not mislead users.
Rule ID
overrides
Policy Reference
Chrome Web Store - Single Purpose💡 How to Fix
Ensure overrides provide clear value to users and do not mislead or hijack search providers. Be transparent about what your extension does when overriding Chrome settings.
Nested Archives
Medium Packagingnested_archives
Detect zip or crx files packaged inside the extension. Nested archives are not allowed and should be extracted.
Rule ID
nested_archives
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Remove embedded archives or extract their contents into the extension package. All files should be directly accessible, not nested in archives.
Headless Smoke Test
Medium Testingsmoke_test
Scan for console.error statements as a proxy for runtime errors. Helps identify potential issues before submission.
Rule ID
smoke_test
Policy Reference
Chrome Web Store - Functionality💡 How to Fix
Review the logged errors and handle exceptions gracefully. Consider running your extension in headless mode during CI to catch runtime issues early.
Third-Party Library Risk
Medium Securitylibrary_cve
Identify outdated third-party libraries with known vulnerabilities. Outdated libraries pose security risks to users.
Rule ID
library_cve
Policy Reference
Chrome Web Store - Third-Party💡 How to Fix
Update the listed libraries to the latest secure versions or remove them if not needed. Regularly check for security advisories and CVEs in your dependencies.
Metadata Quality Score
Low Metadatametadata_quality
Calculate a score for name, description and icon completeness. Higher quality metadata improves store listing and user trust.
Rule ID
metadata_quality
Policy Reference
Chrome Web Store - Enough Information💡 How to Fix
Provide a descriptive name (5+ characters), a meaningful description (30+ characters), and a set of high-resolution icons (16, 32, 48, 128). Avoid generic placeholder values.
Affiliate Tracking
Medium Privacyaffiliate
Detect UTM, affiliate or referral parameters in code. Disclosure is required for affiliate relationships.
Rule ID
affiliate
Policy Reference
Chrome Web Store - Affiliate Tracking💡 How to Fix
Clearly disclose affiliate relationships in your listing and obtain user consent before tracking. Be transparent about any referral or affiliate programs.
Runtime Simulation
Coming Soon Testingruntime_simulation
Available for Enterprise Plans: Runtime simulation launches a headless Chrome instance with your extension installed to analyze console errors, network requests, storage usage, and permission prompts. This feature is available for Enterprise customers.
Rule ID
runtime_simulation
Policy Reference
Chrome Extensions Documentation🚀 Coming Soon
Runtime simulation and sandbox testing are available for Enterprise plans. This includes headless browser testing, malware detection, and CRX binary analysis. Contact us to learn more about Enterprise features.
No policies found matching your search.
Try adjusting your filters or search terms.
Frequently Asked Questions
Find answers to common questions about ExtensionAudit.ai
Getting Started
What is ExtensionAudit.ai?
ExtensionAudit.ai is a comprehensive compliance scanner for Chrome extensions. It analyzes your extension against Chrome Web Store policies to help you identify and fix issues before submission. Our scanner checks for manifest compliance, security issues, privacy violations, code quality, and more.
How do I get started?
Getting started is easy:
- Sign up for a free account
- Upload your extension (.zip or .crx file)
- Select a scan profile (Dev, Store, or Enterprise)
- Review your compliance report
- Fix issues using the provided guidance
What file formats do you support?
We support .zip archives and .crx files. You can also upload an unpacked extension directory. The scanner will automatically extract and analyze all files in your extension package.
Scan Profiles
What are the different scan profiles?
Dev (Lenient) - Free Plan
Only shows high and critical severity issues. Perfect for early development when you want to focus on major problems without noise from minor findings. Ideal for iterative development.
Store (Strict) - Pro Plan
Full Chrome Web Store policy compliance check using the complete rule set across all categories (permissions, remote code, privacy, metadata, obfuscation, content, etc.) with standard severity weightings. Recommended before submission.
Enterprise (Paranoid) - Pro Plan
Maximum security checks with elevated severity for telemetry, third-party libraries, and security hardening. Includes additional enterprise-only checks like CSP strictness, debug artifact detection, and affiliate disclosure. Best for sensitive or internal extensions.
Which profile should I use?
Choose based on your stage:
- Dev: Early development, quick iterations
- Store: Before Chrome Web Store submission
- Enterprise: Internal tools, high-security requirements
Privacy & Security
Is my code stored or shared?
No. Your source code is never stored or shared.
Your source code is processed temporarily during scanning and immediately deleted. We only store report summaries (scores, issue counts, timestamps) for your account history. Your code never leaves our secure environment and is never shared with third parties.
How secure is the scanning process?
All scanning happens in isolated, temporary environments. Files are processed in secure containers that are destroyed immediately after analysis. Communication is encrypted using HTTPS, and we follow industry best practices for data security.
What data do you collect?
We collect minimal data:
- Email address (for account management)
- Report summaries (scores, issue counts, timestamps)
- Usage analytics (via Firebase Analytics)
We do NOT collect or store your source code, file contents, or any sensitive extension data.
Plans & Pricing
What's included in the Free plan?
The Free plan includes:
- 25 Dev profile scans per month (includes 7-day free trial with unlimited scans)
- Basic compliance checking
- Issue reports with fixes
Store profile requires a Pro subscription. Enterprise profile is available only with Enterprise plans.
What's included in the Pro plan ($39.99/month)?
Pro plan includes everything in Free, plus:
- Unlimited scans per month
- Access to all scan profiles (Dev, Store, Enterprise)
- Saved report history
- Report exports (PNG, PDF, CSV, JSON)
- Advanced compliance analysis
- Third-party library risk scoring
- Telemetry detection
- CSP analysis
- Metadata quality checks
- Obfuscation & Permissions Inference
- CLI local scanning (Coming Soon)
Can I cancel my subscription?
Yes, you can cancel your Pro subscription at any time. Your subscription will remain active until the end of your current billing period, and you'll retain access to all Pro features until then.
Using Reports
How do I fix issues found in my scan?
Each issue in your report includes:
- Description: What the issue is
- Severity: Critical, High, Medium, or Low
- Suggested Fix: Step-by-step remediation guidance
- Code Locations: Where the issue appears in your code
- Policy Links: Official Chrome Web Store documentation
Use the Knowledge Base above to search for detailed information about specific error codes.
What do the severity levels mean?
Critical: Must fix before submission (e.g., Manifest V3 violations, remote code)
High: Should fix for best practices (e.g., excessive permissions, privacy issues)
Medium: Recommended to fix (e.g., metadata quality, CSP strictness)
Low: Nice to fix (e.g., debug artifacts, minor metadata issues)
Can I export my reports?
Yes! Pro plan users can export reports in multiple formats:
- PNG - Visual report images for sharing
- PDF - Printable report documents
- CSV - Spreadsheet format for issue tracking and analysis
- JSON - Machine-readable format for CI/CD integration
Report summaries are also saved in your account history for easy access. Export functionality is available from the report detail page.
How long are reports stored?
Report summaries are stored in your account for as long as your account is active. Full report details are available for 30 days after scanning. Pro plan users have extended storage for report history.
Technical Questions
What Chrome Web Store policies do you check?
We perform comprehensive static analysis using 28+ specialized policy rule engines that check against ALL major Chrome Web Store policy categories. See the policy list above for complete details.
Each check includes: specific file locations, line numbers, severity ratings, actionable fix guidance, and links to official Chrome Web Store policy documentation.
How accurate and comprehensive are the scan results?
ExtensionAudit.ai performs comprehensive static analysis using 28+ specialized policy rule engines that check against all major Chrome Web Store policy categories.
Our scanner analyzes:
- Manifest Compliance: MV3 validation, required fields, cross-consistency checks, service worker validation
- Security: Remote code detection, dynamic script injection, CSP strictness, security hardening
- Permissions: Excessive/unused permissions, missing API permissions, sensitive permission auditing
- Privacy: Privacy policy requirements, telemetry/tracking detection, affiliate disclosure
- Code Quality: Obfuscation detection, code readability, debug artifacts
- Third-Party Libraries: CVE vulnerability scanning, outdated library detection, risk assessment
- Metadata: Completeness checks, quality scoring, description vs reality validation
- Content: Prohibited content detection, HTTP vs HTTPS validation
- Packaging: Missing files, nested archives, CRX integrity checks
- Testing: Smoke test analysis (runtime simulation coming soon for Enterprise)
The scanner uses advanced pattern matching, regex analysis, semantic version comparison, and policy rule engines to provide highly accurate results. Each issue includes specific file locations, line numbers, severity ratings, and actionable fix guidance with links to official Chrome Web Store policy documentation.
Note: The scanner performs static analysis only (it doesn't execute your extension in a browser). Some runtime behaviors may require manual testing, but the scanner catches 95%+ of compliance issues before submission.
Can I use this in CI/CD pipelines?
Yes! Our CLI tool (coming soon) is designed for CI/CD integration. You can run scans as part of your build process to catch compliance issues before deployment. The scanner returns exit codes that can be used to fail builds if critical issues are found.
Support
What if I need help?
We're here to help! You can:
- Search by error code in the Knowledge Base above
- Browse the policy reference above for detailed information
- Contact us at Support@ExtensionAudit.ui
Do you offer enterprise support?
Yes! Enterprise customers receive priority support, custom scanning profiles, and dedicated account management. Contact us at Support@ExtensionAudit.ui for more information.
Still have questions?
Can't find what you're looking for? We're here to help!
Need Help?
Can't find what you're looking for? Our support team is here to help!
Email us at:
Support@ExtensionAudit.ui