FAQ · Tools and setup

Why is my GoHighLevel inbound webhook not firing?

Usually the workflow is not published, the URL is not the one GoHighLevel generated, or the sender is not sending the method the trigger expects. GoHighLevel leaves little trace when a webhook does not fire, so check the sender first and work down the list.

Key takeaways

  • Check the sender's log first; if it sent nothing, GoHighLevel never sees the event.
  • Copy the URL from the trigger in the same sub-account; a copy from another account will not fire.
  • A draft workflow does not run for live events. Publish, then send a fresh test.
  • If the request arrives but the contact is wrong, the cause is usually field mapping.

Why is my GoHighLevel inbound webhook not firing?

Usually one of five things: the workflow is not published, the webhook URL in the sending system is not the one GoHighLevel generated, the sender is not sending the method the trigger expects, the trigger's filters exclude the record, or the sender never sends at all. Check them in that order, because the first two cause most cases.

Start with a fact that changes how you troubleshoot: a webhook that does not fire leaves almost no trace on the GoHighLevel side. Nothing appears in the workflow, so you have to prove each link in the chain before you blame the trigger.

What is confirmed and what is not. GoHighLevel's own API article points to its developer documentation for webhook events, and the help article we could reach does not describe the inbound trigger's behaviour. The steps below combine the trigger setup shown in third-party guides with general webhook troubleshooting. Check each one on your own account.

Troubleshooting tree: check the sender sends, the URL matches, the workflow is published, the method matches, and the filters and enrollment history allow the contactTroubleshooting tree: check the sender sends, the URL matches, the workflow is published, the method matches, and the filters and enrollment history allow the contact Not firing? 1. Does the sender send? 2. Is the URL the generated one? 3. Is the workflow published? 4. Does the method match? 5. Do filters allow it? Check the sender's logs Copy it again from the trigger Publish, then send a fresh test Compare with the sender's setting Check enrollment history
Work down the list. Each step rules out one cause before you move to the next.

Did the sender send anything at all?

Check the sending system's own log first. If it shows no request, or a failed one, the problem is in the sender, and GoHighLevel will never see the event.

Most sending tools record each webhook call with its status code and response. A 404 means the URL is wrong. A 405 or similar means the method is wrong. A timeout means the destination did not answer in time. Fix the error the sender reports before you touch the workflow.

Is the URL the one GoHighLevel generated?

The URL must be copied from the Inbound Webhook trigger in the same sub-account as the workflow. A URL copied from another sub-account, an older workflow or a test screenshot will not match.

Sub-accounts are separate, so a webhook created in one will never fire a workflow in another. If you duplicated a workflow or moved it, check that the sender uses the URL of the copy that is now live, not the original.

Is the workflow published?

A draft workflow does not run for live events. Publish it, then send a fresh test, because a test sent before publishing tells you nothing about the live path.

This is the most common cause in practice. The workflow looks finished in the editor, the sender reports success, and nothing happens because the workflow was never switched on.

Does the method match what the trigger expects?

Compare the method the sender uses with the one the trigger accepts. Third-party guides describe the inbound trigger as accepting POST, GET or PUT, so a sender that sends DELETE or PATCH will not match it.

Set the sender to POST if you control it. If the sender only offers a different method, check the trigger's current options on your account, because the list can change.

Do the trigger's filters allow this contact?

Filters and re-entry settings can stop a contact that is valid. Check the enrollment history for the contact: if it shows the entry, the trigger fired and the problem is later in the workflow.

Common causes are a filter that requires a tag the sender does not add, a re-entry setting that blocks a contact who already went through the workflow, and a condition on a field that the sender renamed. Test with a fresh contact, not one that already entered the workflow.

What should you do if the checks pass?

Read the workflow's execution details for the request, then compare the data the sender sent with the fields the workflow expects. A trigger that fires with the wrong data looks like a trigger that does not fire.

If the request arrives but the contact is wrong or incomplete, the cause is field mapping or a renamed field, not the webhook itself. Fix the mapping, send a fresh test, and record which field changed so the next person can find it quickly.

When should you get help with a webhook?

Get help when a webhook has stopped and you cannot see the sender's logs, when more than one flow depends on it, or when the data carries personal or patient information.

A short fix is often a copied URL or a published workflow. A flow that has been silent for a week, with leads lost in the gap, needs a proper audit: every webhook mapped, tested and alerted. Our GoHighLevel setup service includes that testing, and the GoHighLevel automation page explains how workflows are built. For connecting a tool that has no native GoHighLevel integration, read how GoHighLevel inbound webhooks work. If the sender is an n8n or Zapier flow, the test and production URL question and the Catch Hook question cover the same checks from their side.

Sources and further reading

Screens and trigger options change. Where this page differs from GoHighLevel's current documentation, follow the documentation.

A webhook has been silent and leads are missing?

Book a free 30-minute call. We audit each webhook, check the sender logs and the enrollment history, and fix the mapping with a test you can see.

Get in touch

Tell us what you want to automate or build.

Send a few lines about your business and what is not working. We reply within one business day with next steps, or book a call if you would rather talk now.

  • Free 30-minute strategy call, no obligation
  • Written plan with scope and price before any build
  • Six months of maintenance included on every build
Alpit Patel
Alpit PatelFounder, Autoesta · HighLevel Certified Admin

With country code, so we can call you back.

We reply within one business day. Your details are used only to answer this enquiry. Privacy policy

Prefer to talk now? Book a free call

Book a Free Strategy Call