Shipping daily
Nov 1DATAAll 646 projects re-verified: 6,419 developer claims tested against registers, courts and pressNov 1DATAMalaysia TEDUH and Philippines DHSUD licence checks: expired licences and approved delays foundNov 1DATAThailand ONEP register: 2 condos found selling before environmental approvalNov 1DATAMexico PROFECO contract register checks: one sales registration belonged to a laundryNov 1DATAAbu Dhabi ADREC inspections and RAK RERA permit list added: % built straight from the regulatorNov 1SHIPPEDNew stage filter: completed but still sellingNov 1SHIPPEDPublic database page: verification levels, disclosure distribution, every marketNov 1DATA+212 projects in one day, round 3: USA, Caribbean, Gulf, Africa, Japan, AustraliaNov 1SHIPPEDStage on every case: off-plan or under constructionOct 31SHIPPEDVerification level per check on every case card: registry, independent, developer, contradicted
Changelog →

Kolaboro / Database / SQL

SQL on the whole database, in your browser

Every tracked project and every market, as two signed Parquet files rebuilt every day. Load DuckDB, ask your own question, and check that the file you queried is byte for byte the one we signed. Nothing you type leaves your device.

…projects (rows)
…markets (rows)
…both files, compressed
…file built

DuckDB (WebAssembly, version 1.32.0) is only downloaded when you click. Tables: projects and markets.

Verify this file

The Parquet files are built by a scheduled job from the public JSON and published as static files. Our server then fetches them, hashes them and signs the result with the same Ed25519 key that signs every open API answer. This button hashes the exact bytes your browser downloaded (the same bytes DuckDB queries) and checks that signature against the published key. No step trusts this page's word.

    Schema

    Loading the manifest…

    What the columns mean, and what they do not

    • checks_public (0 to 6): how many of the six buyer checks the project makes public: permit, deposit protection, construction progress, plans, developer track record, no guaranteed returns. A high number means documents are public, not that they are genuine.
    • checks_confirmed (0 to 6): how many of those were confirmed by an official registry or an independent source. level_* says how each check was confirmed: registry, independent, developer (self-declared), contradicted or none.
    • claims_*: developer claims we tested, by result. advertised_yield_pct is what the developer advertises, not a return anyone has measured.
    • Projects are anonymous (ids like BALI-014) until verification is complete. The file holds the fields already public in /data/bali-cases.json and nothing else. Some markets have only one or two projects: averages there say little, so the example queries filter small groups out.

    Use it outside the browser

    -- DuckDB CLI, Python or R: the same files over HTTPS SELECT country, count(*) AS projects, round(avg(checks_public), 2) AS avg_public FROM 'https://kolaboro.com/data/kolaboro.parquet' GROUP BY country ORDER BY projects DESC;

    Files: kolaboro.parquet · kolaboro-markets.parquet · manifest · signed manifest · public keys. Licence CC BY 4.0, credit Kolaboro. AI agents can query the same data through our MCP server.

    Not financial or legal advice. Scores describe what each developer makes public, checked against registers and independent sources where we could. See how we score.

    Protect my purchase