An HTML file can show its image correctly while sitting beside that image in a working folder. That does not mean the image is included when only the HTML is handed over.

We built a small owned teaching fixture to make this distinction inspectable. It contains one SVG illustration, not a client campaign or a complete playable. The picture stays the same; its packaging changes.

Three inputs, one reference check

In the first version, the HTML references a sibling file named scene.svg. Submitting only the HTML to a local run of our General HTML5 analyzer produces an unresolved local reference finding. The file named by the reference is absent from that input.

In the second version, we put the same HTML and SVG into a ZIP. The analyzer resolves that reference against the files supplied in the archive.

In the third version, the same SVG is embedded as a data URI inside the HTML. That image no longer depends on a separate sibling file.

These results concern the analyzer’s Referenced local assets check. They are not an overall pass for the package. A complete ZIP may resolve its references and still be the wrong delivery format for a particular destination.

A separate runtime question

We also served the sibling and embedded versions in a controlled browser example. With the normal test policy, both images loaded. With an explicit document image policy allowing only data URIs, the sibling image was blocked and the embedded image remained visible.

That is a resource policy test. The browser was not put offline, and we did not submit the example to an advertising network. It demonstrates one difference in how these two versions obtain this particular image.

Package contents and runtime permissions are different questions. Combining them into a single green approval label would hide that difference.

What to check at handoff

Start with the format actually requested for the destination. Inspect the exact HTML or ZIP that will be handed over, rather than relying on the folder where the creative was developed. Resolve detectable missing references, then test the runtime behavior in its intended environment.

Our checker provides bounded static findings. It does not run the uploaded creative, prove every dynamic resource path, test the player’s experience or grant network approval. Embedding the SVG in this example removes one dependency, not every possible dependency a real playable could contain.

Test note: the analyzer results here came from a pinned local source version with the available local dependencies, not a fresh end to end run of the production checker interface. The controlled browser test was recorded separately.

Check the package you will actually hand over: https://kstudio.lv/products/playable-checker