Skip to main content
Free4 minutesBeginner

What events does Zenovay track automatically (videos, forms, file uploads, clicks)?

Zenovay automatically tracks four user-interaction events out of the box — video progress, form submissions, file uploads, and clicks on buttons and links. No code changes required. Here's what each captures, what it never captures, and where to find the data in your dashboard.

eventsauto-trackingvideoformsfile-uploads
Last updated:

Zenovay tracks four user-interaction events automatically on every website that runs the tracking script — no code, no extra setup. This article explains what gets recorded, what does not, and where to find the data inside your dashboard.

The four auto-captured events

EventWhat Zenovay recordsWhat Zenovay never records
Video progress (HTML5, YouTube, Vimeo)Source URL, provider, milestone (25 / 50 / 75 / 100 %), durationVideo content
Form submissionForm id, name, action URL, number of fieldsForm input values
File uploadFile type (e.g. application/pdf), file sizeFile content
ClickCSS selector, visible text, destination URL (for links)Input values

Video progress

Whenever a visitor plays an HTML5 <video> on your page, Zenovay records a milestone event as they cross 25 %, 50 %, 75 %, and 100 % of the clip. Each milestone fires once per video per session.

YouTube and Vimeo embeds work too — but only if your page already loads the YouTube or Vimeo iframe API. Zenovay never injects their SDKs on your behalf, so if you embed a YouTube video without their API tag, only HTML5-style detection applies (which won't work for cross-origin iframes).

Live streams (where there is no fixed length to measure against) don't produce milestone events, so they won't show up in your video data.

Form submission

Every time a <form> on your page is submitted, Zenovay records the form's id, name, form_action URL, and how many fields it contains. The event fires even if your code calls preventDefault() to handle the submit with JavaScript (common for single-page apps).

{
  "form_id": "newsletter",
  "form_name": "newsletter-form",
  "form_action": "https://example.com/api/subscribe",
  "field_count": 2
}

Form field values — what the visitor typed into the inputs — are never read or sent to Zenovay.

File upload

When a visitor selects a file using <input type="file">, Zenovay records the file type (the MIME type the browser reports) and the file size in bytes. A 10 MB PDF, for example, looks like this on the wire:

{
  "files": [
    { "type": "application/pdf", "size": 10485760 }
  ],
  "count": 1
}

The file contents never leave the visitor's browser — Zenovay only reads metadata the browser already exposes through its standard File interface.

Click

Clicks on <button>, <a href> (links), [role="button"], and <input type="submit"|"button"> elements are captured automatically. Clicks on generic <div> and <span> elements are not — to keep the data clean and avoid double-counting layout containers. Zenovay records a short CSS selector that identifies the element, the visible text inside it (truncated), and the link destination if it is an anchor.

{
  "selector": "button#signup-cta",
  "text": "Sign up free",
  "href": null,
  "tag": "BUTTON"
}

Because Zenovay only listens on buttons and links, no text from <input> fields (search boxes, password fields, etc.) is ever captured.

Video progress (example payload)

{
  "video_src": "https://example.com/intro.mp4",
  "video_title": "Product intro",
  "provider": "html5",
  "milestone": 50,
  "duration": 120,
  "current_time": 60
}

provider is one of html5, youtube, or vimeo. milestone is one of 25, 50, 75, or 100.

Where to find this data

Sign in to app.zenovay.com and pick the website you want to inspect.

Per-visitor timeline

  1. Open your website's dashboard and select the Journeys tab (under the Audience section in the sidebar).
  2. Switch to the Users sub-tab.
  3. Click any row in the user list to open that visitor's detail panel — their timeline loads inside it.

Each auto-captured event appears on its own row with a dedicated icon:

IconEventWhat you see
PlayVideo progress"Watched video" + duration + milestone reached
FileTextForm submission"Submitted form" + form name or id
UploadFile upload"Uploaded file" + size in MB + MIME type
MousePointerClick"Clicked: …" + visible button or link text

Events appear in chronological order. The same view is available from any chart or globe popover that links into a specific visitor.

Aggregate cards on the per-website Analytics tab (Pro and above)

Open any website from your dashboard and stay on the Analytics tab. Among the cards on the page you'll find two new ones for the events Zenovay captures automatically:

  • Video Performance — your top videos. Use the tabs at the top of the card to switch between:

    • Plays — ranked by total play count.
    • Completion — ranked by completion rate (how often viewers reach the 100 % milestone).

    Each row shows the video, a favicon for the source domain, and the count. Click Details to open a modal with the full sortable table — every video, every column, your choice of sort order.

  • Form Performance — your top forms. Use the tabs at the top of the card to switch between:

    • Submits — ranked by total number of submissions.
    • Rate — ranked by submission rate (submits per visit).

    Each row shows the form, a favicon for the source domain, and the count. Click Details for the same full sortable table experience.

Both cards respect the date-range selector and any active filters at the top of the page.

Free plans see an upgrade prompt where the data would be. Pro, Scale, and Enterprise plans see the data immediately.

Public share dashboards

If you share a dashboard via a public share link, anyone who opens that link sees the same Video Performance and Form Performance cards — no plan gate is applied to share views.

Troubleshooting: I don't see any data

A few common reasons the Video Performance and Form Performance cards stay empty:

  • Brand-new tracking code — the events show up within a few seconds of the first real interaction, but if your site has zero visitors so far, the cards stay on the empty state until traffic arrives.
  • YouTube / Vimeo embed without their iframe API — Zenovay relies on postMessage events that only flow when your page already loads the YouTube or Vimeo player API. If you embed a video with just a plain <iframe> tag, the milestones won't fire. Add the YouTube or Vimeo iframe API script to your page to fix this.
  • Sec-GPC: 1 (Global Privacy Control) is on for the visitor — events still record, but the visitor row is flagged and excluded from behavioural enrichment. The aggregate counts on the cards still update.
  • Free tier — the cards show an upgrade prompt instead of data on Free plans. Upgrade to Pro to view.

If none of these apply and the cards stay empty for more than 10 minutes after a known interaction, contact support.

Privacy guarantees

Two things never leave the visitor's browser:

  1. Form input values — what people type into your forms (names, emails, search queries, anything).
  2. File contents — what's actually inside a file someone uploads.

Zenovay only sees the metadata the browser exposes by design: form structure, MIME types, and file sizes. The tracker also respects the Sec-GPC: 1 (Global Privacy Control) signal end-to-end — when GPC is on, no behavioural enrichment is performed and the visitor record is flagged accordingly.

For the full breakdown of what is and isn't collected, see Does Zenovay use cookies? and our Privacy & Compliance page.

Can I turn off individual captures?

These four captures run by default and there is no per-event opt-out flag in the dashboard today. If you need to disable one for a specific compliance need (for example, your industry forbids any form-metadata logging), email support@zenovay.com and we can scope a setting to your tracking code.

Was this article helpful?