diff --git a/core/misc/machine-name.js b/core/misc/machine-name.js
index b2be7bc48788af5ce855624ce0d40e4a518fe700..ac4f0a583a31e257ac5dde0958a22cbeca4083ee 100644
--- a/core/misc/machine-name.js
+++ b/core/misc/machine-name.js
@@ -180,10 +180,19 @@
         // changes, but only if there is no machine name yet; i.e., only upon
         // initial creation, not when editing.
         if ($target[0].value === '') {
+          // Listen to the 'change' and 'input' events that are fired
+          // immediately as the user is typing for faster response time. This is
+          // safe because the event handler doesn't include any slow
+          // asynchronous operations (e.g., network requests) that could
+          // accumulate.
           $source
-            .on('formUpdated.machineName', eventData, machineNameHandler)
+            .on(
+              'change.machineName input.machineName',
+              eventData,
+              machineNameHandler,
+            )
             // Initialize machine name preview.
-            .trigger('formUpdated.machineName');
+            .trigger('change.machineName');
         }
       });
     },