Visit AnalyticsUser Manual Visit Visit Analytics →
Reference and help

The XML data format of the daily statistics files

The statistics are ordinary XML files, so you can read them with any programming language or text editor.

File layout

One file per day, named with the date in your website's time zone: data/<random>/visits/2026-10-25.xml. Every record is on its own line inside a <log> element, so the files are valid XML and can be read line by line.

<?xml version="1.0" encoding="UTF-8"?>
<log>
<v id="6adb1b2ec541a9" t="1792744238" ip="8.8.4.4" vh="d200e706ae5d" u="/?page=pricing" r="https://www.google.com/" cc="US" br="Chrome" bv="130" os="Windows" ov="10/11" dv="desktop" .../>
<e id="6adb1b2ec541a9" tp="42000" sp="80" sw="1920" sh="1080" .../>
</log>

Page view record <v>

AttributeMeaning
idUnique id of the page view (time in hex + random)
tUnix timestamp
ipIP address (shortened if anonymization is on)
vhVisitor hash (12 hex characters)
uPage address: path and query string, without ignored tracking parameters
rReferrer, full address
ccCountry code (ISO 3166), ?? if unknown
br, bvBrowser and major version
os, ovOperating system and version
dvDevice type: desktop, mobile, tablet, tv, console
mdPhone or tablet model
lg, alPrimary browser language and the full Accept-Language value
uaUser agent string
htHost name that was requested
prProtocol: http or https
sfSec-Fetch-Site: none, same-origin, same-site, cross-site
dnDo Not Track header
us, um, uc, ut, uxutm_source, medium, campaign, term, content
ckName of the click ID found in the address (gclid, fbclid...)
cuSec-CH-UA client hint (brands)
scBot score (0–100) when it was above zero but below the threshold
st404 for page-not-found records

Beacon event <e>

Extra data for the page view with the same id, written by beacon.php:

AttributeMeaning
tpActive time on the page in milliseconds
spScroll depth in percent
hu1 = the visitor interacted with the page
sw, shScreen width and height
iw, ihBrowser window width and height
dp, cdPixel ratio and colour depth
tz, toTime zone name and offset in minutes
blBrowser language
tc, mm, cp, cnTouch points, device memory, CPU cores, connection type
tiPage title
wd, hl1 = webdriver / headless browser detected
dk1 = dark mode preferred

Bot record <b>

In bots/<date>.xml: t time, ip, ua, u page, r referrer, cc country, sc score, rs comma-separated reasons, ty type.

Reading the files yourself

foreach (file('2026-10-25.xml') as $line) {
    if (substr($line, 0, 3) !== '<v ') continue;
    preg_match_all('/([a-z]+)="([^"]*)"/', $line, $m, PREG_SET_ORDER);
    // $m now holds the attribute names and values of one page view
}

Do not edit the files while the website is running, and keep the closing </log> line. See also Your data: where statistics are stored, backup and deleting data.

Last updated