Copy interaction event
A copy interaction event records that a user copied text from the page, using the browser copy event. As a UX signal it can hint at which content people find worth saving — code snippets, addresses, prices — without telling you who copied. It is not a native GA4 event; you listen for copy and send a custom event. Crucially you log that a copy happened and where, never the copied text itself.
How it is captured
The browser fires a copy event on the document or an element when the user copies a selection (MDN: Element copy_event). You attach a listener, identify which region or component the selection came from, and emit a custom analytics event with that region as a parameter. You do not read document.getSelection().toString() into analytics — only the fact and the location.
What it can and cannot tell you
Copy signals can indicate content that users treat as a reference: snippets, commands, quotations, contact details. That is genuinely useful for content design. What they cannot tell you is identity or intent beyond the copy itself, and you must not infer those by capturing the copied text. Treat it as a coarse interest signal scoped to a section.
- Listen on the copy event; emit a custom event
- Parameter is the region copied from, not the text
- Copied content may be PII — never store it
How it appears in analytics and logs
Frequent copies from a block suggest high practical value in that content — a reference users want to reuse — useful for prioritising or formatting it better.
Diagnostic use case
Learn which sections users copy (snippets, contact details) by sending a custom event on the copy event, scoped to a region rather than the copied string.
What WebmasterID can help detect
WebmasterID can capture a copy signal as a labelled custom event tied to a content region, storing the label, not the clipboard contents.
Common mistakes
- Storing the copied string, which may contain personal data.
- Assuming a copy implies a specific intent.
- Firing on every selection change rather than actual copies.
Privacy and accuracy notes
Record the location or element copied from, never the copied text — copied content can contain personal data. The copy event should carry a region label only.
Related pages
- Custom events: tracking what matters to you
Custom events capture meaningful actions a pageview cannot — a CTA click, a signup, a video play, a form submit. The value is in a consistent naming taxonomy and well-chosen properties. The risk is putting personal data into event names or properties, which turns analytics into surveillance. This page covers both.
- The select_content event
select_content is a GA4 recommended event that fires when a visitor selects content — clicking an article, a promotion, or a media item. It carries content_type and item_id to identify what was chosen. It is a general-purpose engagement event for non-commerce content, the editorial counterpart to the retail select_item event.
- Event parameters: adding context safely
Event parameters are the key-value details attached to an event: which button, which product, which step. They are what turns a bare event name into something analysable. The craft is choosing a small, stable set of parameters with consistent names and values — and the discipline is keeping every one of them free of personal data, because parameters are stored and widely visible in tooling.
- Events reference (docs)
Send a copy signal as a non-identifying custom event.
Sources and verification notes
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.