Publish a Chrome extension to the Chrome Web Store (beginner checklist)
A non-developer checklist for publishing a Chrome extension: zip your Manifest V3 files, prepare screenshots, answer privacy fields, submit for review, and add Payhook for Pro.
#chrome-web-store#publishing#chrome-extension#manifest-v3#beginners#monetization
You have a Chrome extension that works locally at chrome://extensions. The next step is publishing it in the Chrome Web Store so other people can install it.
This checklist is written for non-developers. It focuses on what to prepare, what to ask your AI assistant to verify, and how to keep monetization simple with Payhook.
Before you submit
Make sure the extension already works locally:
manifest.jsonis valid Manifest V3.- The popup opens from the toolbar icon.
- Permissions are minimal and easy to explain.
- The main feature works after you reload the extension.
- You have a privacy policy if the extension collects, stores, or sends user data.
- The “Upgrade to Pro” button does not collect card details in the popup.
If you are still building, start with Create a Chrome extension without coding or Chrome extension Manifest V3 starter.
Step 1: package the extension
The Chrome Web Store expects a zip file with manifest.json at the top level.
Ask your AI assistant:
Verify this Chrome extension is ready to zip for the Chrome Web Store.
- manifest.json must be at the zip root
- Exclude .git, node_modules, test files, and local secrets
- Confirm all icon paths exist
- Confirm permissions are minimal
- Create a zip package name I can upload
If you zip the wrong folder, Chrome may reject the upload because it cannot find the manifest.
Step 2: create or open your developer account
Go to the Chrome Web Store Developer Dashboard and follow Google’s current account setup steps. Check the dashboard for current registration requirements before launch.
Use an email you will keep long term. Store review notices, policy warnings, and user feedback can arrive there.
Step 3: upload the zip
Google’s publishing guide says the basic upload flow is:
- Open the Chrome Developer Dashboard.
- Add a new item.
- Choose your zip file.
- Upload.
- Fill out the listing tabs.
After upload, the dashboard checks whether the package and manifest are valid. If it fails, paste the dashboard error into your AI assistant and ask it to fix the package.
Step 4: write the listing for humans
Your listing should make the extension feel trustworthy in the first few seconds.
Prepare:
- A plain title.
- A short summary.
- A full description focused on user benefit.
- Screenshots of the popup and the feature working on a real page.
- A support email.
- A privacy policy URL when needed.
- Test instructions if reviewers need credentials or a special flow.
Avoid vague descriptions like “boost productivity with AI.” Say exactly what the extension does: “Copy recipe ingredients into a checklist” or “Block distracting sites during a focus session.”
Step 5: answer privacy and permission questions
Chrome Web Store review cares about what your extension can access and why.
For each permission, write a plain explanation:
| Permission | Better explanation |
|---|---|
storage | Saves your extension settings |
| Host permission for one site | Lets the extension run only on that site |
| Broad host permissions | Use only when the feature truly requires many sites |
If your extension sends page content to an AI service, say so clearly in your privacy policy and listing. Do not hide data behavior.
Step 6: decide how Pro works
Chrome Web Store in-app payments are deprecated, so do not build around old google.payments.inapp tutorials.
For a paid tier, use:
Upgrade button in popup -> Payhook hosted Stripe checkout -> Payhook entitlement check -> Pro unlock
This is easier to explain to reviewers and safer for users because card collection happens on hosted checkout, not inside the extension popup.
Use Chrome extensions no longer support in-app payments for the background and Monetize a browser extension without a payment backend for the implementation path.
Step 7: submit for review
After you complete the listing, privacy fields, distribution choices, and test instructions, submit the item for review.
Review time depends on the extension. If Chrome rejects the listing:
- Read the exact reason.
- Do not guess.
- Paste the notice into your AI assistant.
- Fix the permission, policy, metadata, or package issue.
- Resubmit with a short explanation if the dashboard allows it.
After approval
Keep a release habit:
- Bump the
versioninmanifest.jsonfor each update. - Keep a copy of the zip you submitted.
- Update screenshots when the popup changes.
- Watch user feedback.
- Test Payhook checkout in test mode before switching paid features live.