Prerequisites
Before you can publish to Firefox Add-ons, you need:- A Firefox Add-ons account
- A Firefox account (free, no registration fee)
Unlike Chrome Web Store, Firefox Add-ons does not require a registration fee. Account creation is free.
Build and test for Firefox
Firefox extensions use the same codebase but need to be tested in Firefox before deployment.Test in Firefox during development
To develop and test in Firefox, use:This builds the extension with Firefox-specific configuration and starts the development server.You can also run the extension directly in Firefox:
Build for production
Build the extension for production:This creates optimized files in the
extension/ directory.Upload to Firefox Add-ons
Access the Developer Hub
Go to addons.mozilla.org and sign in with your Firefox account.Navigate to Tools → Submit a New Add-on.
Upload your XPI file
Click Select a file and upload the
extension.xpi file you created.Firefox will automatically validate your extension. Wait for the validation to complete.Choose distribution channel
Select how you want to distribute your extension:
- On this site: Publicly listed on Firefox Add-ons (recommended for most extensions)
- On your own: Self-distributed, signed by Mozilla but not listed
Fill out add-on details
Complete all required fields:
- Name: Your NewTab
- Summary: Short description (up to 250 characters)
- Description: Detailed description of your extension
- Categories: Select up to two categories (e.g., “Tabs” and “Appearance”)
- Support email: Contact email for user support
- Support website: Optional support site URL
- License: Choose an appropriate license
- Privacy policy: Required if your extension collects any user data
- Icon: Upload your extension icon (minimum 64x64px, recommended 128x128px)
- Screenshots: Upload at least one screenshot
Review process
Firefox has a more thorough review process than Chrome:Automated validation
Your extension is immediately scanned for common issues, security problems, and policy violations.
Manual review
A human reviewer examines your code and listing. This can take anywhere from a few hours to several weeks, depending on:
- Complexity of your extension
- Current review queue length
- Whether your extension uses risky permissions
Key differences from Chrome
Be aware of these differences when publishing to Firefox:| Aspect | Chrome Web Store | Firefox Add-ons |
|---|---|---|
| Registration fee | $5 one-time | Free |
| Review time | 1-7 days | Hours to weeks |
| Review depth | Automated + light manual | Thorough manual code review |
| Package format | ZIP | XPI |
| Update speed | Automatic after approval | Same review process |
| Source code | Not required | May be requested |
For extensions with complex build processes (like this one using Vite and TypeScript), Mozilla may request access to your source code to verify the build. Keep your repository accessible or be prepared to provide source files.
Update an existing extension
To update an already published extension:- Increment the version in
package.json - Build and pack:
bun run build && bun run pack:xpi - Go to your extension’s page on the Developer Hub
- Click Upload New Version
- Upload the new
extension.xpi - Update release notes
- Submit for review
Users with your extension installed will automatically receive the update once it’s approved and published.