Verifying a marking
Images and videos produced with RealEstateKit.ai are marked, so that someone receiving one can find out that it was generated or edited by AI. This page explains the two ways to read that marking, and what each of them can and cannot tell you.
It is written for anyone who needs to check: a portal, a regulator, a buyer, or an agent who wants to know what their own file carries.
What we apply
Every edited photograph and every generated still we publish carries two marks: a signed C2PA manifest attached to the file, and an invisible watermark in the pixels carrying an eight-character code.
The manifest records that the artefact was generated or edited by AI, the actions taken, and who signed it. Where the model provider attached a manifest of their own, we record theirs inside ours as the source ours was made from.
The invisible watermark is applied with TrustMark and carries the eight-character code. It is meant to survive ordinary handling — resizing, re-saving — which a C2PA manifest does not: re-encoding a file strips the manifest. We have not measured how much handling the watermark survives in practice.
Video clips are marked differently. They carry the signed manifest and a visible on-screen notice saying the clip was generated by AI. They do not carry the invisible watermark.
Looking up a code
If you have the eight-character code, open realestatekit.ai/c/ followed by the code. The same address returns JSON instead of a page if you ask for it with an Accept: application/json header.
A code we recognise returns what we did: what kind of artefact it was, the date we marked it, that it was generated or edited by AI, whether an invisible watermark was applied, who signed the manifest, what our own validation of that manifest recorded, and whether we recorded an upstream manifest from the model provider.
It returns nothing about the subject — no address, no owner, no listing, no account. That limit is what lets the lookup stay open to anyone with no login, which is the point of it.
Route one: the content credential
Anyone with a C2PA verification tool can read the manifest straight out of the file, with nothing from us. This is the easier of the two routes, and it needs the original file rather than a re-encoded copy of it.
One limitation, which we would rather state than have you discover: our signing certificate is at present a test certificate we issued ourselves. A validator reports the signature as untrusted. It identifies the marking as ours; it is not an independent attestation.
Re-encoding removes the manifest — a portal re-compressing an upload, a messaging app, a screenshot. Its absence from a file is not evidence that the file was never marked.
Route two: the watermark
Recovering the code from the pixels needs a TrustMark decoder set up with the same model and checkpoint we encoded with. A regulator or a portal checking at scale can obtain that. A member of the public cannot, today, and we are not going to suggest otherwise: this is a real limit on how detectable the marking is.
If you need those parameters in order to check content we produced, contact us.
A decode that fails, or that returns the wrong eight symbols, gives the same answer from the lookup as a code we never issued: no record.
What “no record” means
A code that returns no record tells you only that it does not match a marking we applied. It is not evidence that the artefact is authentic, unedited, or free of AI generation. Content we never handled, and a code read incorrectly from content we did, both produce that answer.
Getting in touch
If you are checking a file for a regulatory or compliance reason, or you need the watermark parameters, write to us. Contact RealEstateKit.ai.
Last updated 1 September 2026.