{
  "schemaVersion": "football-prediction-sites-public-evidence-index/1.0.0",
  "version": "1.0.0",
  "title": "Nigeria and Kenya Football Prediction Sites: Public Evidence Availability Index",
  "datePublished": "2026-07-14",
  "checked_at_utc": "2026-07-14T06:20:33Z",
  "license": "https://creativecommons.org/licenses/by/4.0/",
  "licenseScope": "CC BY 4.0 covers only Football Proof AI's original selection, field normalization, protocol and editorial metadata. It does not license third-party names, trademarks, page text, screenshots, datasets or site content.",
  "publisher": "Football Proof AI",
  "entryCount": 7,
  "subjectContext": [
    "Nigeria",
    "Kenya"
  ],
  "inclusionProtocol": [
    "Include independently operated football prediction sites with public pages relevant to Nigerian or Kenyan readers through African, Kenya-specific or broad global football coverage.",
    "Exclude Football Proof AI itself to avoid self-inclusion bias.",
    "This is a bounded editorial sample, not a complete market census."
  ],
  "valueSemantics": {
    "true": "A qualifying public source was located at checked_at_utc and its URL is supplied.",
    "null": "Not publicly located on the reviewed pages at checked_at_utc. Null does not assert that the evidence does not exist.",
    "falseAllowed": null
  },
  "scoringProtocol": {
    "maximumPoints": 10,
    "scoreRule": "Only true contributes its declared weight. Null contributes zero to the evidence-availability total without asserting absence.",
    "displayOrder": "Entries are ordered alphabetically by site name. Availability points are never used for display order.",
    "insufficientEvidenceRule": "If three or more of the six core dimensions are null, comparison_status is insufficient_evidence and the entry must be excluded from any score-sorted comparison.",
    "dimensions": [
      {
        "key": "publicRowArchive",
        "label": "Public row archive",
        "weight": 2,
        "core": true,
        "passRule": "A public page exposes historical forecast rows or recommendations with settled outcomes."
      },
      {
        "key": "exactPrematchTimestamps",
        "label": "Exact pre-match timestamps",
        "weight": 2,
        "core": true,
        "passRule": "A public row exposes a publication or lock timestamp that can be compared with kick-off."
      },
      {
        "key": "settledLosingRows",
        "label": "Settled losing rows",
        "weight": 1.5,
        "core": true,
        "passRule": "The reviewed public history retains settled losses instead of presenting wins alone."
      },
      {
        "key": "fullOneXTwoProbabilities",
        "label": "Full 1X2 probabilities",
        "weight": 1,
        "core": true,
        "passRule": "A reviewed public page exposes home, draw and away probabilities rather than one selected outcome only."
      },
      {
        "key": "declaredEvaluationDenominator",
        "label": "Declared denominator",
        "weight": 1.5,
        "core": true,
        "passRule": "A performance statement is paired with a public fixture or prediction count and a defined evaluation range."
      },
      {
        "key": "downloadableHistory",
        "label": "Downloadable history",
        "weight": 1,
        "core": true,
        "passRule": "A direct, public, machine-readable historical download is locatable without joining a paid plan."
      },
      {
        "key": "publicMethod",
        "label": "Public method",
        "weight": 0.5,
        "core": null,
        "passRule": "A public page describes how forecasts or recommendations are produced."
      },
      {
        "key": "commercialDisclosure",
        "label": "Commercial disclosure",
        "weight": 0.5,
        "core": null,
        "passRule": "A public pricing, subscription, advertising or other commercial-disclosure page is locatable."
      }
    ]
  },
  "truthBoundary": {
    "measures": "Whether eight defined kinds of public evidence were locatable from the cited pages at one recorded review time.",
    "doesNotMeasure": [
      "forecast accuracy or probability calibration",
      "site quality, trustworthiness, safety or legal compliance",
      "betting value, profitability or future performance",
      "traffic, popularity, completeness or product fit"
    ],
    "sourceBoundary": "The cited pages are first-party public sources unless a URL says otherwise. Their claims are not treated as independently verified facts.",
    "changeBoundary": "Public pages, access rules and commercial offers can change after checked_at_utc; re-fetch the original links before relying on a field."
  },
  "legalAndEditorialBoundary": {
    "affiliation": "Football Proof AI is not affiliated with, endorsed by or sponsored by any listed site.",
    "recommendation": "Inclusion, a true value or an availability-point total is not a recommendation, certification or comparative quality judgement.",
    "reproduction": "This publication links to public pages and supplies original factual normalization and short editorial summaries. It does not reproduce third-party articles, prediction rows, screenshots or proprietary datasets."
  },
  "entries": [
    {
      "id": "90predict",
      "name": "90Predict",
      "homepageUrl": "https://www.90predict.com/",
      "declaredScope": "The reviewed site describes 18 competitions and 1X2, both-teams-to-score, totals and double-chance markets.",
      "scopeEvidenceUrl": "https://www.90predict.com/",
      "overviewEvidenceUrl": "https://www.90predict.com/results",
      "archiveUrl": "https://www.90predict.com/results",
      "directDownloadUrl": null,
      "methodUrl": "https://www.90predict.com/",
      "commercialDisclosureUrl": "https://www.90predict.com/",
      "checks": {
        "publicRowArchive": {
          "available": true,
          "evidenceUrl": "https://www.90predict.com/results"
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": true,
          "evidenceUrl": "https://www.90predict.com/results"
        },
        "fullOneXTwoProbabilities": {
          "available": null,
          "evidenceUrl": null
        },
        "declaredEvaluationDenominator": {
          "available": true,
          "evidenceUrl": "https://www.90predict.com/results"
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://www.90predict.com/"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://www.90predict.com/"
        }
      },
      "editorialNote": "The review snapshot at 2026-07-14T06:20:33Z recorded tracked, won, lost, void and settled counts. A later automated request was access-restricted, so the true fields describe that timestamp only and should be re-checked.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 6,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 3
    },
    {
      "id": "betensured",
      "name": "Betensured",
      "homepageUrl": "https://www.betensured.com/",
      "declaredScope": "The reviewed site describes coverage of more than 200 leagues.",
      "scopeEvidenceUrl": "https://www.betensured.com/",
      "overviewEvidenceUrl": "https://www.betensured.com/",
      "archiveUrl": null,
      "directDownloadUrl": null,
      "methodUrl": "https://www.betensured.com/tomorrows-predictions",
      "commercialDisclosureUrl": "https://www.betensured.com/new-pricing",
      "checks": {
        "publicRowArchive": {
          "available": null,
          "evidenceUrl": null
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": null,
          "evidenceUrl": null
        },
        "fullOneXTwoProbabilities": {
          "available": true,
          "evidenceUrl": "https://www.betensured.com/"
        },
        "declaredEvaluationDenominator": {
          "available": null,
          "evidenceUrl": null
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://www.betensured.com/tomorrows-predictions"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://www.betensured.com/new-pricing"
        }
      },
      "editorialNote": "The homepage presented 1/X/2 percentages. A result-checker feature was presented as part of a paid plan, and no direct public prediction-ledger download was located.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 2,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 5
    },
    {
      "id": "betsplug",
      "name": "BetsPlug",
      "homepageUrl": "https://betsplug.com/",
      "declaredScope": "The reviewed site describes global coverage across more than 30 leagues.",
      "scopeEvidenceUrl": "https://betsplug.com/",
      "overviewEvidenceUrl": "https://betsplug.com/track-record/",
      "archiveUrl": "https://betsplug.com/track-record/",
      "directDownloadUrl": null,
      "methodUrl": "https://betsplug.com/methodology/",
      "commercialDisclosureUrl": "https://betsplug.com/pricing/",
      "checks": {
        "publicRowArchive": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/track-record/"
        },
        "exactPrematchTimestamps": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/track-record/"
        },
        "settledLosingRows": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/track-record/"
        },
        "fullOneXTwoProbabilities": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/methodology/"
        },
        "declaredEvaluationDenominator": {
          "available": null,
          "evidenceUrl": null
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/methodology/"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://betsplug.com/pricing/"
        }
      },
      "editorialNote": "The track-record page describes locked timestamps and retains wins, losses and pushes. The pricing page advertises CSV access, but no direct public file was located.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 7.5,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "minimum_public_evidence_met",
      "coreDimensionsNotLocated": 2
    },
    {
      "id": "fixtureinsight",
      "name": "FixtureInsight",
      "homepageUrl": "https://www.fixtureinsight.com/",
      "declaredScope": "The reviewed site describes coverage of more than 40 leagues.",
      "scopeEvidenceUrl": "https://www.fixtureinsight.com/",
      "overviewEvidenceUrl": "https://www.fixtureinsight.com/performance",
      "archiveUrl": "https://www.fixtureinsight.com/recommendations",
      "directDownloadUrl": null,
      "methodUrl": "https://www.fixtureinsight.com/learn/how-fixtureinsight-generates-football-betting-recommendations",
      "commercialDisclosureUrl": "https://www.fixtureinsight.com/pricing",
      "checks": {
        "publicRowArchive": {
          "available": true,
          "evidenceUrl": "https://www.fixtureinsight.com/recommendations"
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": true,
          "evidenceUrl": "https://www.fixtureinsight.com/performance"
        },
        "fullOneXTwoProbabilities": {
          "available": null,
          "evidenceUrl": null
        },
        "declaredEvaluationDenominator": {
          "available": true,
          "evidenceUrl": "https://www.fixtureinsight.com/performance"
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://www.fixtureinsight.com/learn/how-fixtureinsight-generates-football-betting-recommendations"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://www.fixtureinsight.com/pricing"
        }
      },
      "editorialNote": "The performance page gave a defined date range and fixture count and stated that every settled prediction counts. The reviewed interface did not expose a complete 1X2 probability split.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 6,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 3
    },
    {
      "id": "forebet",
      "name": "Forebet",
      "homepageUrl": "https://www.forebet.com/",
      "declaredScope": "The reviewed site describes worldwide coverage across more than 850 leagues, including Kenya.",
      "scopeEvidenceUrl": "https://www.forebet.com/",
      "overviewEvidenceUrl": "https://www.forebet.com/",
      "archiveUrl": "https://www.forebet.com/en/football-predictions/predictions-1x2/2026-07-13",
      "directDownloadUrl": null,
      "methodUrl": "https://www.forebet.com/en/what-is-forebet",
      "commercialDisclosureUrl": "https://www.forebet.com/en/privacy-policy",
      "checks": {
        "publicRowArchive": {
          "available": true,
          "evidenceUrl": "https://www.forebet.com/en/football-predictions/predictions-1x2/2026-07-13"
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": true,
          "evidenceUrl": "https://www.forebet.com/index.php/en/football-tips-and-predictions-for-kenya"
        },
        "fullOneXTwoProbabilities": {
          "available": true,
          "evidenceUrl": "https://www.forebet.com/"
        },
        "declaredEvaluationDenominator": {
          "available": null,
          "evidenceUrl": null
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://www.forebet.com/en/what-is-forebet"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://www.forebet.com/en/privacy-policy"
        }
      },
      "editorialNote": "Reviewed past competition rows retained probabilities, selected outcomes and final scores. The privacy page disclosed advertising-related processing; no direct historical download was located.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 5.5,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 3
    },
    {
      "id": "gorilla-sport",
      "name": "Gorilla Sport",
      "homepageUrl": "https://gorilla-sport.com/",
      "declaredScope": "The reviewed site describes global coverage across more than 730 leagues.",
      "scopeEvidenceUrl": "https://gorilla-sport.com/",
      "overviewEvidenceUrl": "https://gorilla-sport.com/",
      "archiveUrl": "https://gorilla-sport.com/predictions",
      "directDownloadUrl": null,
      "methodUrl": "https://gorilla-sport.com/how-it-works",
      "commercialDisclosureUrl": "https://gorilla-sport.com/pricing",
      "checks": {
        "publicRowArchive": {
          "available": true,
          "evidenceUrl": "https://gorilla-sport.com/predictions"
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": true,
          "evidenceUrl": "https://gorilla-sport.com/predictions"
        },
        "fullOneXTwoProbabilities": {
          "available": null,
          "evidenceUrl": null
        },
        "declaredEvaluationDenominator": {
          "available": true,
          "evidenceUrl": "https://gorilla-sport.com/"
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://gorilla-sport.com/how-it-works"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://gorilla-sport.com/pricing"
        }
      },
      "editorialNote": "A settled LOST state was observed in the public archive. The reviewed interface showed a selected outcome and confidence rather than a complete home/draw/away split.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 6,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 3
    },
    {
      "id": "tiki-taka",
      "name": "Tiki Taka",
      "homepageUrl": "https://www.tikitaka.gg/",
      "declaredScope": "The reviewed article describes global football coverage across more than 20 leagues, including AFCON.",
      "scopeEvidenceUrl": "https://www.tikitaka.gg/articles/best-football-prediction-sites-for-african-leagues-2026-ranked-by",
      "overviewEvidenceUrl": "https://www.tikitaka.gg/articles/best-football-prediction-sites-for-african-leagues-2026-ranked-by",
      "archiveUrl": null,
      "directDownloadUrl": null,
      "methodUrl": "https://www.tikitaka.gg/football-ai-predictions",
      "commercialDisclosureUrl": "https://www.tikitaka.gg/",
      "checks": {
        "publicRowArchive": {
          "available": null,
          "evidenceUrl": null
        },
        "exactPrematchTimestamps": {
          "available": null,
          "evidenceUrl": null
        },
        "settledLosingRows": {
          "available": null,
          "evidenceUrl": null
        },
        "fullOneXTwoProbabilities": {
          "available": true,
          "evidenceUrl": "https://www.tikitaka.gg/"
        },
        "declaredEvaluationDenominator": {
          "available": true,
          "evidenceUrl": "https://www.tikitaka.gg/articles/best-football-prediction-sites-for-african-leagues-2026-ranked-by"
        },
        "downloadableHistory": {
          "available": null,
          "evidenceUrl": null
        },
        "publicMethod": {
          "available": true,
          "evidenceUrl": "https://www.tikitaka.gg/football-ai-predictions"
        },
        "commercialDisclosure": {
          "available": true,
          "evidenceUrl": "https://www.tikitaka.gg/"
        }
      },
      "editorialNote": "The reviewed article gave a self-published 847-match denominator, not an independent check. The method page said predictions remain available, but a row-level public archive was not located.",
      "checked_at_utc": "2026-07-14T06:20:33Z",
      "availabilityPoints": 3.5,
      "maximumAvailabilityPoints": 10,
      "comparisonStatus": "insufficient_evidence",
      "coreDimensionsNotLocated": 4
    }
  ]
}
