How to record frustration events

Frustration events record when the user does something that is probably ‘frustrating’ to them, such as clicking on a button that doesn’t work. These are shown under our Frustration screen.

Silktide attempts to detect frustration automatically. However, you can expand this with your own code to record custom frustration events for things we might not automatically detect. For example, you could record when your forms show an error message.

What Silktide records automatically

Silktide automatically detects “dead clicks”, which are clicks where nothing appears to happen after the click (e.g. the DOM doesn’t change, and a new page doesn’t load, within 3 seconds).

We intend to expand this to include other predictable sources of frustration over time, e.g. the presence of certain JavaScript errors.

Recording your own frustration event

Use the following JavaScript to record a frustration event:

silktide("frustration", {
  "selector": ".foo a",
  "type": "formError",
  "text": "The name field is required",
  "x": 50,
  "y": 50
});
  • selector – optional CSS selector, so this can be shown visually in our Inspector.
  • type – a code which identifies the type of the frustration. Silktide uses deadClick to identify its own dead clicks, you can add any other string you wish.
  • text – optional text for the frustration, e.g. the text inside the element which was clicked, or an error message. This will be shown inside the Silktide Analytics Inspector to describe the frustration.
  • x and y – the % position of the click within the selector (e.g. x = 50, y = 50 would mean ‘in the exact middle’. If you don’t wish to calculate these, we recommend you specify 50 and 50 by default.

Learn more about recording JavaScript events and recording server-side events.

Need extra help?

Chat with our support team now and we'll be happy to help you with any issues