What this demonstrates

The canonical placement-id setup. The <div id="ezoic-pub-ad-placeholder-147"> is markup the page owns — the id comes from a placement created in the Ezoic dashboard. ezstandalone.showAds(147) activates it and the ad renders inside that div. The div carries no width, height, or margin: the docs warn that styling a placeholder leaves empty space if the ad does not fill.
Integration used on this page
<!-- Head: consent + Ezoic standalone loader -->
<script data-cfasync="false" src="https://cmp.gatekeeperconsent.com/min.js"></script>
<script data-cfasync="false" src="https://the.gatekeeperconsent.com/cmp.min.js"></script>
<script async src="//www.ezojs.com/ezoic/sa.min.js"></script>
<script>
  window.ezstandalone = window.ezstandalone || {};
  ezstandalone.cmd = ezstandalone.cmd || [];
</script>

<!-- Body: publisher-owned placeholder div + activation call -->
<div id="ezoic-pub-ad-placeholder-147"></div>
<script>
  ezstandalone.cmd.push(function () {
    ezstandalone.showAds(147);
  });
</script>

View source on GitHub →

Docs: Ad Placements — Using Placement IDs

The canonical placement-id setup

This page is what the advanced setup looks like: a placement id was created in the Ezoic dashboard, and the matching placeholder div lives in the page's own markup. Nothing about the position is inferred — the div is exactly where the ad renders.

The paragraph above is the first content block and this is the second. Directly below sits the placeholder div and the activation call. The div is empty markup on its own; it fills only after showAds(147) runs and the auction returns an ad.

This third paragraph continues after the placement. Because the div is unstyled, if no ad fills it collapses to nothing rather than leaving a fixed empty box — which is why the docs advise against putting width, height, or margin on placeholder divs.

A final paragraph keeps the article long enough to read like real content rather than a fixture.