You Built Something. Now What?
So your extension works on your machine. You've been using it for a few days, maybe showed it to a friend. It's good. It solves a real problem.
But right now, it lives on your laptop. To share it, you'd have to tell people: "clone this repo, open chrome://extensions, enable developer mode, click load unpacked..." — and you've already lost 95% of potential users.
The Chrome Web Store changes that. One link. One click. Installed.
This is the guide to getting your extension from "works on my machine" to "available to anyone with Chrome, Brave, or Edge."
Before You Start: The Checklist
You need four things:
- A Google Developer account ($5 one-time fee)
- Your extension packaged as a .zip file
- Store listing assets (icons, screenshots, description)
- A privacy policy (even if your extension collects nothing)
Let's go through each one.
Step 1: Register as a Chrome Web Store Developer
Go to the Chrome Web Store Developer Dashboard.
- Sign in with your Google account
- Pay the $5 one-time registration fee
- Accept the developer agreement
That's it. You're a registered extension developer. This account is permanent — you'll use it for every extension you ever publish.
Tip: Use a dedicated Google account if you plan to build multiple extensions. It keeps things clean.
Step 2: Prepare Your Extension for Production
Clean your manifest.json
Make sure your manifest has everything the store requires:
{
"manifest_version": 3,
"name": "D-Tox: YouTube Detox",
"version": "1.0.0",
"description": "Hide distractions, disable autoplay, reclaim your attention.",
"icons": {
"16": "icon-16.png",
"48": "icon-48.png",
"128": "icon-128.png"
},
"permissions": ["storage", "activeTab"],
"host_permissions": ["https://www.youtube.com/*"]
}Critical things the store checks:
namemust be unique on the storedescriptionmust be under 132 charactersversionmust follow semver (e.g.,1.0.0)- Icons at 16x16, 48x48, and 128x128 pixels are required
- Only request permissions you actually use
Build and zip
If you're using a build tool like WXT:
npm run buildThen zip the build output:
cd dist/chrome-mv3
zip -r ../../d-tox-v1.0.0.zip .If you're using plain HTML/JS, just zip your project folder directly — minus node_modules, .git, and any dev files.
Important: The zip must contain manifest.json at the root level. Not inside a subfolder.
Step 3: Create Your Store Listing Assets
This is where most developers rush and regret it later. Your store listing is your landing page. It's the difference between someone installing your extension and bouncing.
Required assets:
1. Store Icon (128x128 PNG)
You already have this in your manifest. But make it good. This is what people see when browsing the store. It should be:
- Recognizable at small sizes
- Not just text — use a symbol or shape
- Consistent with your extension's branding
2. Screenshots (1280x800 or 640x400)
You need at least 1 screenshot, but I recommend 3-5:
- Screenshot 1: Your extension popup with toggles active
- Screenshot 2: YouTube before D-Tox (cluttered)
- Screenshot 3: YouTube after D-Tox (clean)
- Screenshot 4: The presets tab
- Screenshot 5: The settings/more tab
How to take good screenshots:
- Open your extension popup
- Use Chrome DevTools (right-click popup > Inspect)
- In DevTools, click the device toolbar icon
- Set dimensions to 1280x800
- Take a screenshot (Ctrl+Shift+P > "Capture screenshot")
3. Promotional images (optional but recommended)
- Small tile: 440x280 — shown in store search results
- Marquee: 1400x560 — shown if featured
Writing your store description
You get a detailed description field (up to 16,000 characters). Structure it like this:
[One-line pitch]
[3-4 bullet points of key features]
[How it works — 2-3 sentences]
[Privacy note]
[Link to source code if open source]Real example for D-Tox:
Detox your YouTube. D-Tox hides distracting elements so you
only see what you intentionally search for.
Features:
- 20 toggle controls (home feed, shorts, comments, sidebar, and more)
- 4 preset profiles (Minimal, Focus, Light, Custom)
- Master on/off switch — pause D-Tox with one click
- Export/import your settings
- Works on Chrome, Brave, and Edge
How it works:
Click the D-Tox icon in your toolbar. Toggle what you want hidden.
Changes apply instantly — no page reload needed.
Privacy:
D-Tox stores your preferences locally using Chrome's storage API.
No data is collected, transmitted, or shared. Ever.
Open source: https://github.com/najmushsaaquib/d-toxStep 4: Write a Privacy Policy
Google requires a privacy policy URL, even if you collect zero data.
The simplest approach — create a page on your website or a GitHub gist:
# D-Tox Privacy Policy
Last updated: March 2026
D-Tox does not collect, store, or transmit any personal data.
All user preferences are stored locally on your device using
Chrome's storage API (chrome.storage.local). No information
leaves your browser.
D-Tox does not use analytics, tracking, cookies, or any
third-party services.
Contact: [email protected]Host this somewhere with a permanent URL. You'll paste this URL in the developer dashboard.
Step 5: Submit for Review
Now the actual submission:
- Go to the Developer Dashboard
- Click "New Item"
- Upload your
.zipfile - Fill in the store listing:
- Language, description, category ("Productivity" works for most)
- Upload screenshots and icons
- Paste your privacy policy URL
- Under Distribution:
- Choose Public (visible to everyone)
- Select which countries (usually "All regions")
- Click "Submit for Review"
The Review Process
Google manually reviews every extension. Here's what to expect:
- First submission: 1-3 business days (sometimes up to a week)
- Updates after approval: Usually 1-2 days
- Rejections: They'll email you the specific reason. Fix it and resubmit.
Common rejection reasons:
- Requesting permissions you don't use (e.g.,
tabswhen you don't need it) - Missing or inadequate privacy policy
- Description doesn't match what the extension does
- Icon or screenshots are misleading
Step 6: You're Live
Once approved, you'll get a Chrome Web Store URL like:
https://chrome.google.com/webstore/detail/d-tox/abcdefghijklmnopShare this link everywhere. Anyone who clicks it can install your extension in one click.
Publishing Updates
When you release a new version:
- Bump the
versioninmanifest.json(e.g.,1.0.0→1.1.0) - Rebuild and zip
- Go to Developer Dashboard > Your extension > Package
- Click "Upload new package"
- Upload the new zip
- Submit for review
Versioning convention:
1.0.1— Bug fixes1.1.0— New features2.0.0— Breaking changes or major redesign
What About Firefox, Edge, and Brave?
Brave and Edge use the Chrome Web Store directly. Anyone who installs your Chrome extension can use it on Brave and Edge too. No extra work.
Firefox has its own store: addons.mozilla.org. The process is similar:
- Create a Firefox developer account (free)
- Upload your extension (use
npm run build:firefoxif using WXT) - Submit for review (usually faster than Chrome)
If you used WXT like I did, you can build for both with one codebase:
npm run build # Chrome/Brave/Edge
npm run build:firefox # FirefoxThe Reality of Distribution
Publishing is the easy part. Getting users is the hard part.
Things that actually work:
- Write about it. Blog posts, Twitter threads, Reddit posts in relevant communities.
- Solve a real problem. Extensions that scratch a genuine itch get shared organically.
- Keep the store listing honest. Over-promising leads to bad reviews which tanks your ranking.
- Respond to reviews. Even negative ones. It shows you care.
- Open source it. Trust is everything for extensions. People want to know what code is running in their browser.
The $5 Investment That Changes Everything
For five dollars and a weekend of work, you can put a tool in front of millions of potential users. There is no other distribution channel this accessible for indie developers.
You don't need a company. You don't need a marketing budget. You don't need permission from anyone.
You just need something that solves a problem, and the willingness to ship it.
D-Tox is open source and available on the Chrome Web Store (link coming soon) and GitHub. If you found this helpful, consider starring the repo or sharing it with someone who needs to detox their YouTube.