vendor/doubleverify-event · ecosystem evidence
DoubleVerify event.png hops need vstevt
Generated video wrappers always send vstevt on event.png, so an empty or missing value is a truncated quartile trail. Impression visit.jpg hops stay vendor/doubleverify. Amazon-hosted /dv/ hops stay vendor/amazon-vfw.
A quartile hop without vstevt is a truncated trail
Generated DoubleVerify video tags always send vstevt on event.png. Dropping it is how the quartile never ties back to the impression.
What this pack matches
Rules
Codes are stable. A finding in CI, MCP, or the playground lands on the same id.
| Field | Required | What it checks | Rule ids | Source |
|---|---|---|---|---|
vstevt |
required | It is the viewability event code on generated DoubleVerify video event.png hops. Google documents ctx, cmp, plc, and sid as dvparams on the wrapper, not this query. Generated event.png tags always send vstevt, so an empty or missing value is a truncated quartile trail. Fix: Export the DoubleVerify video tag again so event.png carries vstevt. | vendor.doubleverify-event.param.vstevt.missingvendor.doubleverify-event.param.vstevt.empty |
docs |
dup |
optional | It is the impression correlation id that ties an event.png hop to its visit.jpg. Generated video wrappers send it on both hops. An empty pair drops the quartile out of the impression. Fix: Keep dup from the generated visit.jpg tag on each event.png hop, or drop the empty pair. | vendor.doubleverify-event.param.dup.empty |
docs |
Validate a payload
pixellint validate url "$ARTIFACT" --rulepack vendor/doubleverify-event
Try this failing payload in the playground. DoubleVerify event.png missing vstevt.
https://tpsc-video-eu.doubleverify.com/event.png?dup=009efc7c-fed0-4c1b-a410-ee9f22dfecc2
cargo install pixellint
·
npm install pixellint