SDK: Troubleshooting
The production SDK logs nothing to the console. Use the Network tab in DevTools and filter by feedback.tools.
| Problem | Check |
|---|---|
| Nothing appears | The SDK script loads with status 200. The sessions/ request answers 200. 401 means a wrong publishableKey. 403 with api_key_forbidden means a key of another survey. 404 means a wrong surveyId or an inactive survey. |
| The popup doesn't open | Manual event tracking is off: with it on, only open() opens the popup. The current URL matches the target pages. You haven't answered or dismissed the survey before: clear ft_<surveyId> in localStorage. No other popup is open. |
open() does nothing | Manual event tracking is on for the survey. The survey is a popup, not an embed. init() ran for this surveyId. |
| The embed stays empty | root matches an element in document when the survey data arrives. The container doesn't hold another survey. |
A second init() is ignored | One surveyId can have one widget. Call destroy() first. |
| The widget has no styles | Your CSP allows the SDK host in style-src. |
| The popup hides behind your header | Raise --ft-popup-z-index. See Custom styles. |
| Images are blank in a screenshot | Their server allows CORS, and your CSP connect-src allows their host. |