Install & operate
Import from Umami
You can import your past data from Umami. Umami keeps one row per page view and event, the same detail Vitrus records, so imported history behaves exactly like data Vitrus collected: every report, filter and query covers it.
From Umami Cloud
- In Umami Cloud, open Account → Data and export the website.
- In Vitrus, open Site settings → Import history and upload the file as it is —
.csv.gzor.csv, up to 100 MB. Split a larger export by date range.
From self-hosted Umami
Self-hosted Umami has no export button, but one query against its database produces the same file. On PostgreSQL, with your website's id from Umami's settings:
\copy (
SELECT e.session_id, e.visit_id, e.event_id, e.hostname,
s.browser, s.os, s.device, s.screen, s.language, s.country, s.region, s.city,
e.url_path, e.url_query, e.utm_source, e.utm_medium, e.utm_campaign, e.utm_content, e.utm_term,
e.referrer_path, e.referrer_query, e.referrer_domain, e.page_title,
e.event_type, e.event_name, e.tag,
to_char(e.created_at AT TIME ZONE 'UTC', 'YYYY-MM-DD HH24:MI:SS') AS created_at
FROM website_event e JOIN session s ON s.session_id = e.session_id
WHERE e.website_id = 'YOUR-WEBSITE-ID'
ORDER BY e.created_at
) TO 'umami-export.csv' WITH CSV HEADER
Older Umami versions lack some of these columns (region,
tag, hostname, the utm_* columns) —
delete any your version does not have. Only event_id, session_id,
created_at, url_path and event_type are required;
times must be UTC. On MySQL, run the same SELECT with
DATE_FORMAT(e.created_at, '%Y-%m-%d %H:%i:%s') and save the result as CSV with a header row.
What happens to your data
| Rule | Why |
|---|---|
| Rows from the day Vitrus started collecting onwards are skipped. | Otherwise a visit both tools recorded would count twice. The import tells you how many it skipped. |
| Importing the same file again adds nothing. | Each event keeps its Umami id, so a repeated or overlapping file is harmless. |
| Channels and sources are re-classified with Vitrus's rules. | So "search", "ai" and "social" mean the same thing before and after the switch. |
| Umami's "session" becomes a visitor; its "visit" becomes a session. | The two tools use the words the other way round. |
| Every import can be removed. | Remove deletes exactly the events that import added, and the receipt stays in the list. |
What about Plausible?
Plausible exports daily totals — "412 visitors on 3 March" — not the visits themselves. Turning totals into individual visits would mean inventing them, and every number built on them could no longer be checked. We will import Plausible history as what it is, a separate daily series, rather than pretend; that is not built yet.