HTML5 game publishing
How to Track Licensing Permissions for Hundreds of Browser Games
What to record for each game, a sample tracking table and a scalable system for permissions, iframe rights, evidence and removal requests.
When you run a site with hundreds of browser games, the hardest question is not "does it load?" but "am I allowed to show this?". Permissions get lost in emails, change when a developer moves studios, or are withdrawn when a rights holder complains. Without a record, you cannot prove you had permission, and you cannot find which games to remove when someone asks.
This guide describes what to record, how to structure the records, gives a sample tracking table, and proposes a workable system for sites that manage hundreds of games.
What you need to know about every game
Who
- Developer or rights holder: the legal name, studio or person who owns the game.
- Provider or distributor: the platform you got it from, if any.
- Contact: a real email for permission or removal questions.
What you may do
- Licence or permission type: own game, open-source licence, written permission, platform terms, or a distributor's embed terms.
- Scope: hosting the files, embedding via iframe, using the name and art in your listings, and showing ads around it.
- Territory and duration: worldwide or limited; permanent or until a date.
- Evidence: a link or saved copy of the terms, email or licence text, with the date you captured it.
How it is delivered
- Delivery method: files you host, or an iframe from the provider.
- Embed URL: the exact address and who controls it.
- Artwork rights: thumbnail and cover, which may have different terms from the game itself.
- Attribution: whether credit or a link back is required, and whether it must be visible.
Lifecycle
- Date added, last checked, next check.
- Status: active, under review, removal requested, removed.
- Removal requests: date received, who sent it, what you did and when.
Sample tracking table
| Field | Example | Why it matters |
|---|---|---|
| Game | Example Puzzle | Identifies the record; keep the URL slug too |
| Developer / rights holder | Example Studio Ltd | Who can grant or withdraw permission |
| Source type | Own, open source, partner, licensed, embed allowed | Sets the rules that apply |
| Permission basis | Written email, platform terms, MIT licence | The legal reason you may show it |
| Evidence URL or file | Link or saved PDF of the terms | Proof if someone challenges you |
| Permission date | 2026-09-12 | Terms change; you need to know which version applied |
| Contact | permissions@example.com | Where to ask or notify |
| Delivery | Iframe from provider / hosted copy | Controls how you take it down |
| Iframe allowed | Yes / No / Only on listed domains | Some licences limit where it can be embedded |
| Artwork rights | Provided by developer / needs confirmation | Thumbnails are often separate |
| Attribution required | Visible link to the provider | Compliance duty |
| Ads allowed | Yes / No / Revenue share | Money around the game can need extra consent |
| Status | Active | Drives what is public |
| Last verified | 2026-10-01 | Triggers re-checks |
| Removal request log | None / received 2026-10-05, removed 2026-10-06 | Shows you responded promptly |
A system that scales to hundreds of games
- One record per game, in a database or spreadsheet. A single source of truth beats scattered emails. Use the table above as the columns.
- Do not publish without a record. Make the permission fields required before a game can go live. The record should exist first, and the public page follows.
- Save evidence at the time you add the game. Terms pages change. Store a dated copy, such as a PDF or screenshot with the URL.
- Use an "approved for distribution" flag. A separate yes/no field that a person sets after reviewing the licence, so nothing is distributed automatically just because it exists.
- Track every status change. Record who changed it and when.
- Schedule re-checks. Review each provider's terms every six or twelve months, and check embed URLs still work.
- Keep a removal procedure. A short checklist: confirm the claimant, unpublish the game, remove it from sitemaps and feeds, reply with the date, log the outcome.
- Review by risk. Spend most effort on games with unclear sources, strong brand names or third-party characters.
How PlayKovo records it
PlayKovo tracks these items on every game. The game record has fields for the source type, a licence note, the provider name and URL, a link to the permission evidence, the permission date, a permission contact, an embed permission note, a thumbnail rights note, and attribution label and link. A separate admin decision, the "Allow in embed catalog" checkbox, is the only gate that lets a game be offered to other websites, so nothing is offered automatically because of its source type. The terms say that games belong to PlayKovo, its developers or their licensors, and that a listing can be disabled if a provider withdraws it or a rights complaint arrives.
That is a model you can copy even without a database: the same fields work in a spreadsheet.
Common mistakes
- Relying on "it was free on another site". Availability is not permission.
- Assuming an open-source licence covers the art and music, which can have different licences.
- Embedding a game and forgetting that the embed can change or disappear without your knowledge.
- Saving permission only in someone's inbox.
- Ignoring removal requests, or answering after weeks.
Monthly routine
- Check new games all have complete records.
- Open ten random embeds and confirm they still load; automate this with an automated broken-game check.
- Review any status changes and removal requests.
- Re-read the terms of your top providers.
This is not legal advice. For anything unclear, ask the rights holder in writing or consult a lawyer. If you would rather not manage hosting rights at all, PlayKovo's catalog lists which games are enabled for distribution: see free HTML5 games for your site and the Partner Terms.


