One script, no backend changes
Add a feedback entry
to your website.
Visitors can report a problem from the current page. The page URL, device context, and optional screenshot arrive in your Feedback++ console.
Copy the code
Add it to your layout
Submit a test
Show the feedback button
Place this snippet before </body> in your shared website layout.
Use your own button
Hide the default launcher and call FeedbackPlus.open() from an existing help menu or report button.
No code changes? Use the hosted feedback link
Every site has a hosted feedback page that requires no script at all. Share the link in email signatures, a footer "Feedback" entry, or community posts — visitors can submit feedback with an optional image attachment.
Framework and platform snippets
Pick your stack and get an integration snippet with your siteKey pre-filled: WordPress theme, React/Next.js component, Vue/Nuxt entry, or a Google Tag Manager tag.
Three setup steps
Create a website in the Feedback++ console and copy its site key.
Put the script in the shared layout, usually before </body>.
Submit a test feedback and confirm that it appears in the console.
Useful configuration
data-site-key: public site identifier, not a private credential.data-locale="en": show the widget in English.data-launcher="false": hide the default launcher.data-position="left": move the launcher to the lower-left corner.data-screenshot-mode: choosereadable,balanced, orcompact.data-feedback-private: exclude sensitive DOM from screenshots.
Screenshots and privacy
Feedback++ captures the page DOM without asking the visitor for screen-recording permission. Cross-origin images, iframes, video, and complex canvas content may not be captured completely. Treat screenshots as useful context and exclude sensitive regions explicitly.
Troubleshooting
- No button: check that the script loaded, the site key is correct, and CSP is not blocking it.
- Submission failed: make sure the site's "websites allowed to submit feedback" list (site settings) includes the target page origin, e.g.
https://example.com. - Screenshot is incomplete: check CORS for images and cross-origin frames.
- Custom button does nothing: load the script before calling
FeedbackPlus.open().