Skip to content

Automatic measurements

Like GA4’s “enhanced measurement”, eodia analytics measures a few common interactions without a single line of code on your side. Each one is turned on or off in the site’s Settings (all are on when the site is created), and the setting reaches the script with the response to the first page view.

These are predeclared events: their properties and descriptions are already in the metadata, and they have their own analytics.evt_<name> view and their comments like any other.

EventTriggerProperties
outbound_clickclick on a link to another domainurl (without query), domain, text (link label, 100 characters)
file_downloadclick on a link to a file whose extension is in the site’s listurl, extension, name
site_searcha page view whose address carries a search parameter (derived by the server)term, param
form_startfirst input in a formform, fields
form_submitform submissionform, fields
video_startplayback of a <video> startssrc, title, percent, duration
video_progressreaching 25, 50 and 75%same
video_completeend of the videosame

A click on an http or https link whose domain is not the page’s. The address is kept without its query or fragment; the label is cut to 100 characters.

A click on a link whose extension is in the site’s list: by default pdf, zip, rar, 7z, gz, doc, docx, xls, xlsx, csv, ppt, pptx, odt, ods, txt, rtf, epub, mp3, mp4, mov, avi, wav, dmg, exe, msi, apk. The list is edited in the Settings. A link to a file on another domain counts as a download, not as an outbound link.

Nothing to do in the script: the server reads the address of the page view before removing its query. If it carries one of the site’s search parameters (by default q, s, search, query), it adds a site_search event.

  • The term is truncated to 100 characters.
  • Anything that looks like an e-mail address or a phone number is masked.
  • The parameter that carried the search is recorded in param.

Searches without results can be read by joining site_search to the page view that follows, or by declaring an event of your own (search_no_result).

form_start on the first input in a form, form_submit when it is submitted. The form is identified by its id, its name or, failing that, the path of its action; fields gives its number of fields.

No entered value is ever read, neither the content of a field nor its name. Abandonments can be read in the views: a form_start without a form_submit in the same page view.

SELECT s.form AS form,
count(*) AS started,
count(f.event_id) AS submitted
FROM analytics.evt_form_start s
LEFT JOIN analytics.evt_form_submit f
ON f.page_view_id = s.page_view_id AND f.form = s.form
GROUP BY 1

The page’s HTML <video> elements: start, reaching 25, 50 and 75%, end. The source is kept without its query; the title comes from the video’s title or aria-label attribute.

eodia analytics is free software by Eodia.