You open the router's traffic page, or a VPN provider's dashboard, and there is a per-device byte total with a graph beside it. It is tempting to read that graph as a browsing history. It is not one, and the reason is structural rather than legal. A counter adds up sizes, while a history records destinations and content, and only the second one tells you where someone went.

Start from the screen you are reading

Before interpreting a number, find out what produced it. A router's per-device total usually comes from physical interface counters, a VPN client's total comes from its tunnel, and a provider panel comes from accounting on the far peer. Each counts a different slice of the same session. Two panels showing different numbers for the same hour are usually both correct.

The interval matters as much as the source. A lifetime total, a daily rollup and a live rate are three different measurements, and only the live rate has enough resolution to line up with one action.

Write down the source and the interval before you write down a conclusion.

Counters measure layers, not pages

On a WireGuard peer, the transfer counters in wg show are totals for that peer, encrypted payload included. OpenVPN's status output reports per-client bytes at its own layer. On the host, the tun interface counts inner IP packets while the physical adapter counts outer UDP packets, so the two differ by encapsulation overhead and by everything else sharing the link.

Retransmissions inflate a total without any new content arriving, and a background sync can dominate an hour while the user reads plain text.

That is why a large total suggests a data-heavy activity and nothing more specific. A downloaded file's size and the counter's delta are related, but they are rarely equal.

What a total can and cannot support

A byte total cannot name a site, because names and URLs live inside TLS or QUIC sessions the counter never inspects. It cannot separate a video stream from a large backup, or a page load from an advertising refresh loop. What it can support is a claim about volume and time: this device moved this much data during this window.

Turning that into a claim about a person needs two more ingredients, an identity and a correlation.

The RFC 6973 privacy considerations document explains why that combination matters, and it is also why a careful report separates what was observed from what was inferred. If the conclusion needs the word because, the counter alone is not enough evidence.

Timing and identity change the answer

Attach a counter to a named user and a precise interval and it becomes a different object.

You can then line it up against other observations: a login record, a DNS query, a session on another system. The counter did not reveal the destination, but it helped someone who already had a hypothesis confirm it. Encryption protects content and names in transit, and it does not hide the fact that a flow existed, how large it was, or when it started.

That is the honest boundary: patterns are visible, meaning is not.

Decide what you retain before you collect

If the requirement is capacity planning, a coarse daily aggregate answers it and costs little. If the requirement is per-user history, say so explicitly, name the fields and the retention window, and treat the decision as policy rather than as a dashboard feature. Collecting fine-grained history because the panel supports it is how retention grows without anyone deciding.

For troubleshooting, compare the counter against the action you are testing. A steadily increasing total proves traffic is flowing, not that the application works.

A flat counter during a session that clearly works usually means you are reading a cached value or the wrong interface. Name the retained fields and the window, and the next audit will have something concrete to check.

Winndannde jowitiiɗe heen