A screen's log is not proof

What a signed playback record actually proves — and what it does not.

An advertiser buying screen time wants to know one thing: did my content actually run, on which screen, and for how long?

In most of the industry, the answer is a log. The player writes down what it played, the vendor’s server collects those lines, and at the end of the campaign a report is generated from them. The report is only as good as the log, and the log is kept by the same party that is being paid for the playback. It is a claim, not evidence.

A claim you can check

In ibibik, every playback record is signed on the device, with that device’s own certificate, and then sent to the server. The server counter-signs it and anchors it to a qualified timestamp.

That changes what the record means:

  • It can’t be edited after the fact without the signature breaking.
  • It is tied to one specific screen, because that screen holds its own key.
  • The timestamp fixes when it existed, so a report can’t be assembled later from records that were never there.

An advertiser can check the claim — this content, on this screen, for this long — instead of taking the vendor’s word for it.

What it doesn’t prove

It’s worth being exact about the limits, because this is where proof-of-play is usually oversold.

A signed record proves that the player on a specific device stated that it played specific content at a specific time, and that this statement hasn’t been changed since. It does not prove that anyone was looking. It doesn’t say how many people walked past, whether they noticed, or who they were. A screen can play perfectly to an empty street.

Anyone who blurs “played” and “seen” is selling a feeling, not a measurement.

Next: attention

The second question advertisers will ask is not “did it run” but “did anyone see it”. That is the next phase for ibibik: using image processing and AI to estimate how much attention a piece of content received and the rough demographics of the people in front of the screen.

The analysis will run on the device itself. Camera frames will be processed there and never stored, there will be no face recognition, and what reaches the server will be fully anonymous. That has a cost, and I accept it on purpose: without recognizing faces, the system can’t tell that the same person walked past twice, so it will sometimes count one person more than once. An audience figure that runs slightly high, and says so, is better than one that needs to know who you are.

That will be a different kind of evidence, with its own limits, and I’ll write about it when it’s running.

Until then the principle stays the same: a log a system keeps about itself is a claim. Build it so the claim can be checked, and say clearly what it doesn’t prove.

← All writing