JSVanilla JS

Feedback widget
for Vanilla JS.

One script tag. No framework. No build step. Works on plain HTML pages.

For static sites, classic server-rendered apps, WordPress themes, or anywhere a build step would be overkill. Drop two script tags into your HTML and the widget appears.

~12kb
gzipped
0
config
MIT
license
Install1 step
> index.html· html
<!doctype html>
<html lang='en'>
  <body>
    <!-- your page -->

    <script src='https://unpkg.com/@usero/sdk'></script>
    <script>
      Usero.initUseroFeedbackWidget({
        clientId: 'YOUR_CLIENT_ID',
      })
    </script>
  </body>
</html>

Replace YOUR_CLIENT_ID with the id from your Usero dashboard.

Built for Vanilla JS

Why teams shipping with Vanilla JS pick Usero.

No build step required

Paste two script tags. No npm, no bundler, no toolchain. Works in any HTML page on any host.

CDN-served, immutable URLs

unpkg and jsDelivr both serve the IIFE bundle automatically. Pin a version and it never changes underneath you.

No framework tax

The vanilla build never imports React. Plain HTML pages pay zero framework overhead.

Works inside CMSs

WordPress, Ghost, Webflow, Squarespace, any platform that lets you paste raw HTML. The widget installs the same way.

Canny still requires an account dance and a 200kb iframe. Usero is a 12kb script with no iframe and no auth bridge.
vs Canny script

FAQ

Quick answers, Vanilla JS edition.

Does it work without a bundler?

Yes. The script tag installs a global Usero object on window. Call Usero.initUseroFeedbackWidget(...) from any script.

Can I self-host the script?

Yes. Download the IIFE bundle from unpkg or npm and serve it from your own domain.

Does it work in WordPress or Ghost themes?

Yes. Paste the script tags into your theme footer or a "code injection" field. Every page picks up the widget.

What if my page loads scripts deferred?

The widget tolerates deferred and async loading. It boots whenever the script finishes parsing.

Ship a feedback widget in your Vanilla JS app today.

Free tier. No credit card. Two-minute install. Cancel by deleting two lines of code.

Get started free