Troubleshooting

Start with the message in the browser console or failed network request. Each section below gives you the shortest useful check before the fix.

The Survey Does Not Appear

What You See

The survey tag renders in HTML but no component appears on the page.

Check This First

  • Verify the package script import is present before your component tag.
  • Confirm network requests for the component bundle return 200.
  • Check console for custom element registration errors.

Fix

  1. Load the correct package (`@sensefolks/*`) for the tag you use.
  2. Render the tag only after script/module load in SSR frameworks.
  3. Confirm the `survey-key` belongs to an active survey.

Related Guides

“Survey Has Been Permanently Disabled”

What It Means

The website that owned this survey was deleted in SenseFolks. Deleting a website permanently disables every survey inside it, so old embeds check as disabled each time they load and cannot collect another response.

What to Do

  1. Remove the disabled survey embed from your site or application.
  2. If you still need the research, create a new website and survey in the dashboard, then install the new embed and survey key.

A deleted website and its data cannot be restored. Changing the old embed code cannot re-enable its surveys.

Related Guide

Survey Operations Reference

Survey Styles Do Not Apply

What You See

Brand colors and typography work on your page but not inside survey UI.

Check This First

  • Check if selectors target ::part(...) names, not internal DOM.
  • Inspect element to verify part names exist on that component version.
  • Confirm CSS loads after the component stylesheet in your app bundle.

Fix

  1. Replace global selectors with exposed CSS Part selectors.
  2. Start with shared parts (`survey-container`, `heading`, `button`).
  3. Add component-specific part selectors only where needed.

Related Guides

Survey Events Do Not Fire

What You See

Analytics hooks or custom handlers never receive submit/ready events.

Check This First

  • Confirm listeners are bound to the custom element instance, not a wrapper.
  • Verify event name casing (for example sfReady).
  • Test with a minimal listener and log event details.

Fix

  1. Attach listeners after element mount.
  2. In React, use a ref and bind in an effect with cleanup.
  3. Verify survey completion path actually reaches submit state.

Related Guides

API or CORS Errors

What You See

Survey requests fail with authorization, origin, or blocked preflight errors. This includes a 403 response withAccess denied based on origin.

Check This First

  • Open the failed embed request in the browser network tab and check whether the response body saysAccess denied based on origin.
  • Compare the browser origin, such as https://example.com, with the Website URL and survey Embed URL in SenseFolks.
  • Check browser network tab for failing request and status code.
  • Verify adblock/privacy extensions are not blocking request domains.

Fix

  1. Update the Website URL in the dashboard to the production origin where the survey is embedded.
  2. Open the survey settings and confirm the Embed URL uses the same production origin.
  3. Include the protocol, prefer the canonical hostname, and make sure redirects point visitors to that hostname.
  4. Retry from a clean browser profile and confirm extension impact.
  5. If issue persists, capture request ID and contact support.

Related Guides