diff --git a/adev/src/content/reference/errors/NG05101.md b/adev/src/content/reference/errors/NG05101.md
new file mode 100644
index 000000000000..1459c4ecb4b8
--- /dev/null
+++ b/adev/src/content/reference/errors/NG05101.md
@@ -0,0 +1,26 @@
+# No event manager plugin found for event
+
+This error occurs when Angular tries to set up a listener for an event but none of the registered event manager plugins recognizes the event name.
+
+## Debugging the error
+
+The error message includes the unrecognized event name, which is usually enough to spot the problem. The most common cause is a typo in the event binding:
+
+```html
+
+
+
+
+
+```
+
+If the event name is intentional and belongs to a third-party plugin (for example, a Hammer.js gesture event), make sure the plugin is provided via the `EVENT_MANAGER_PLUGINS` token:
+
+```typescript
+import {ApplicationConfig} from '@angular/core';
+import {EVENT_MANAGER_PLUGINS} from '@angular/platform-browser';
+
+export const appConfig: ApplicationConfig = {
+ providers: [{provide: EVENT_MANAGER_PLUGINS, useClass: MyCustomPlugin, multi: true}],
+};
+```
diff --git a/goldens/public-api/platform-browser/errors.api.md b/goldens/public-api/platform-browser/errors.api.md
index ead51d7ea4fe..8980f5fff998 100644
--- a/goldens/public-api/platform-browser/errors.api.md
+++ b/goldens/public-api/platform-browser/errors.api.md
@@ -13,7 +13,7 @@ export const enum RuntimeErrorCode {
// (undocumented)
HYDRATION_CONFLICTING_FEATURES = 5001,
// (undocumented)
- NO_PLUGIN_FOR_EVENT = 5101,
+ NO_PLUGIN_FOR_EVENT = -5101,
// (undocumented)
ROOT_NODE_NOT_FOUND = -5104,
// (undocumented)
diff --git a/packages/platform-browser/src/errors.ts b/packages/platform-browser/src/errors.ts
index 432b6382594b..b186fe009feb 100644
--- a/packages/platform-browser/src/errors.ts
+++ b/packages/platform-browser/src/errors.ts
@@ -16,7 +16,7 @@ export const enum RuntimeErrorCode {
// misc errors (5100-5200 range)
BROWSER_MODULE_ALREADY_LOADED = 5100,
- NO_PLUGIN_FOR_EVENT = 5101,
+ NO_PLUGIN_FOR_EVENT = -5101,
UNSUPPORTED_EVENT_TARGET = 5102,
TESTABILITY_NOT_FOUND = 5103,
ROOT_NODE_NOT_FOUND = -5104,
diff --git a/packages/platform-browser/test/dom/events/event_manager_spec.ts b/packages/platform-browser/test/dom/events/event_manager_spec.ts
index cbf0b2e70095..bfb8f2d1c7f3 100644
--- a/packages/platform-browser/test/dom/events/event_manager_spec.ts
+++ b/packages/platform-browser/test/dom/events/event_manager_spec.ts
@@ -60,7 +60,7 @@ import type {} from 'zone.js';
const plugin = new FakeEventManagerPlugin(doc, ['dblclick']);
const manager = new EventManager([plugin], new FakeNgZone());
expect(() => manager.addEventListener(element, 'click', null!)).toThrowError(
- 'NG05101: No event manager plugin found for event click',
+ 'NG05101: No event manager plugin found for event click. Find more at https://next.angular.dev/errors/NG05101',
);
});