Intermediate Signal Throw Event
Broadcasts a signal that any listening catch event — in any process — can receive. Double thin circle with a filled triangle.
The Signal Throw Event is the publish side of BPMN's publish/subscribe: one throw, any number of catches, no addressing. Use it to announce business facts other processes care about.
When to use and avoid
When to use
To announce facts with multiple independent consumers: “inventory updated”, “case closed”, “freeze started”.
To decouple the announcing process from its (present and future) listeners.
For cross-process coordination inside the organization without message plumbing.
When NOT to use
For addressed communication with a known partner — Message.
When the announcement must be acknowledged — broadcasts have no reply semantics.
As an intra-process go-to — use Link Events for that.
Business example
Announcing a published price list

Open this example in the HEFLO process editor and explore the diagram from the inside.
Open in the HEFLO editor →Step by step
- Approve price list finishes the review.
- The Signal Throw Event (highlighted, filled triangle) broadcasts “price list published”.
- This process continues to archive the working files; meanwhile sales, e-commerce and partner processes catch the signal independently.
Differences
Signal Throw vs Message Throw
Message: one addressed recipient, crosses specific Pool boundaries. Signal: broadcast to whoever subscribes, unknown to the thrower. If you can name the receiver, it's probably a message.
FAQ
What if nobody is listening when the signal fires?
The signal is simply lost — broadcasts are not queued for future listeners. Processes must already be at a catching state to receive it.
Can a signal carry data?
Engines typically allow a small payload on the signal, but keep it light — signals are announcements, not data transfer.