1. Create a Google Form

Go to Google Forms. Create a form. Use this as sample if you can’t think of good questions to ask on a feedback form.

After you’re happy with your form, click Preview (the eye icon next to colour palette and settings gear). Copy the URL. This will be your public-facing form link.

2. Add code to background.js (or similar)

/* Check whether new version is installed */
chrome.runtime.onInstalled.addListener(function(details) {
    if (details.reason == "install") {
        /* If first install, set uninstall URL */
        var uninstallGoogleFormLink = = 'YOUR_FORM_LINK_HERE';
        /* If Chrome version supports it... */
        if (chrome.runtime.setUninstallURL) {
            chrome.runtime.setUninstallURL(uninstallGoogleFormLink);
        }
    }
});

Add this snippet to the bottom of your background.js file, or whatever is guaranteed to run when the extension installed. If no javascript runs on extension install, then add it to whatever script gets run first. The snippet only needs to get run once.

Motivation

I maintain PrettyPrintGmail, a Chrome Extension that cleans up printing in Gmail and lets you print emails in large batches + other things. A friend and I initially built it just for ourselves, but on a lark I put it up on the Chrome Web Store (for 6.33 CAD) and forgot about it. Next time I checked on it, it had 500 daily active users. “Woah cool,” I said and promptly forgot about it again (I had exams and assignments to worry about; I swear I don’t have transient amnesia).

A year later, I checked again, and the extension had grown to 1500 users. Intrigued, I checked the Stats page of the extension. I noticed that the extension had quite a few uninstallations. The number of people installing on a daily basis was growing, but so was the number of people uninstalling. Which kinda made sense, considering that more the users, more the number of people who could uninstall it, but still it would be good to know what exactly they didn’t like so I could make fancy GitHub issues around them and tag them as feature-requests and bugs (I have simple pleasures). It turns out that you can add a handler to your Chrome Extension that opens a URL when the user uninstalls the extension [API reference link]. Yes! So I could create a feedback form and redirect the user to that when they uninstalled. But creating a form sounded like work. I could just use Google Forms. And that’s what I did, as described above.