Website publishing
129 Free Games for Your Website: PlayKovo Catalog via iframe and JSON Feed
As of October 29, 2026 the embed catalog has 129 games. Paste one iframe or pull the whole catalog from a JSON or XML feed.
As of October 29, 2026, the PlayKovo embed catalog has 129 games, and website owners can put them on their own sites for free. You do not have to upload or host any game files. PlayKovo hosts and updates the games, and you either paste a short iframe or read the whole catalog through a JSON or XML feed. This post explains both ways.
Option 1: one game, one iframe
If you only want a few games, copy an iframe from the catalog. The embed address of a game is https://playkovo.com/embed/GAME-SLUG. A responsive version keeps the 16:9 shape on any screen width:
<div style="position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#000;">
<iframe src="https://playkovo.com/embed/GAME-SLUG" title="Game on PlayKovo"
style="position:absolute;inset:0;width:100%;height:100%;border:0;"
loading="lazy" allow="fullscreen; autoplay; gamepad; pointer-lock" allowfullscreen>
</iframe>
</div>
For a portrait game, use a tall box and limit its width so it does not become huge on desktop: set max-width:420px and aspect-ratio:9/16.
One rule: do not add referrerpolicy="no-referrer" to the iframe. PlayKovo identifies your website from the referrer, and without it your launches cannot be counted in analytics.
Option 2: the JSON or XML feed
If you want a full game section, or you want to import games into a CMS, read the feed instead of copying games one by one. There is no API key.
GET https://playkovo.com/api/embed-games?format=json
GET https://playkovo.com/api/embed-games?format=xml
JSON is the default. The feed is cached for five minutes, so fetching it more often returns the same data. You can save it from a terminal:
curl "https://playkovo.com/api/embed-games?format=json" -o playkovo-games.json
What each game contains
- slug, a stable name you can use as your own key.
- title, shortDescription, description, instructions and controls, ready for cards and game pages.
- thumbnailUrl and coverUrl, for the card image and banner.
- deviceSupport (all, desktop or mobile) and screenOrientation (landscape, portrait or any).
- categories and tags, which you can use to sort and filter.
- embedUrl and iframe, the address and a ready-made snippet.
A small example
fetch("https://playkovo.com/api/embed-games?format=json")
.then((response) => response.json())
.then(({ games }) => {
for (const game of games) {
console.log(game.title, game.embedUrl);
}
});
On a real site, cache the feed on your server instead of loading it in every visitor's browser. Filter by categories, device support or orientation, and render the ready-made iframe on your own game page.
Keep your list in sync
The feed only contains games that are currently enabled for the catalog. Sync it regularly, and remove any game from your site that no longer appears in the feed. Otherwise a visitor could land on a page with a game that is gone.
See your launches
Embeds work without registration. To see launches from your own site in the partner dashboard, register your website with the exact domain that shows the iframe. The step-by-step guide, with the full field list and examples, is in the partner documentation. You can also look through the games first in the catalog.


