Step 1 — Verify the script is loaded
Open your site in a browser and open DevTools (F12 or right-click → Inspect). In the Network tab, filter byhardal. You should see a request to your signal endpoint loading the script. If you see nothing, the script isn’t installed or is being blocked.
Check the script tag
Open DevTools → Elements and search for
data-website-id. Confirm the script tag is present in the <head> and that data-website-id matches your actual Signal ID from Settings → Setup.Check for console errors
Open DevTools → Console. Look for any errors referencing
hardal or usehardal.com. A 404 usually means the Signal ID is wrong; a CORS error usually means the custom domain isn’t configured yet.Step 2 — Verify the event fires
If the script is loading but a specific event is missing:Open the Hardal Events dashboard
Go to Analytics → Events in your signal and set the date range to Today. Make sure All Events is selected in the filter dropdown.
Trigger the event
In a separate browser tab, perform the action that should fire the event — add a product to cart, complete a purchase, submit a form.
Step 3 — Verify the event payload
If the event is reaching Hardal but a destination isn’t receiving it:Open the Events detail panel
In Analytics → Events, find the event row and click it to open the detail panel. Check the Parameters section — does the payload contain the fields your destination expects?
Check your destination allowlist
Go to Destinations, select the destination that’s not receiving the event, and verify the event name is in the allowlist. If it’s not listed, the destination won’t receive it — even if it’s arriving at Hardal.
Common causes
| Symptom | Most likely cause | Fix |
|---|---|---|
| No events at all | Script not installed | Add script to <head> with correct Signal ID |
| Page views only, no custom events | hardal.track() not called | Add event tracking code at the relevant user action |
| Event in Hardal but not in destination | Event not in destination allowlist | Add event name to the destination’s allowlist |
| Event in destination but with wrong data | Field mapping mismatch | Check field mapping in destination settings |
| Intermittent events | Race condition — script not loaded before track call | Move script tag earlier in <head> or defer tracking call |
Still stuck?
Event Tracking Reference
Browse all events in your signal dashboard
Web Installation Guide
Full installation guide and event SDK reference