{
  "checkedAt": "2026-09-18",
  "method": "One GET of each home page as a desktop browser, then as GPTBot, OAI-SearchBot and ClaudeBot, from an ordinary Australian connection. A site counts as refusing an agent when it answered the browser and did not answer that agent. Requests do not come from OpenAI or Anthropic address ranges, so a refusal means the site refuses anything calling itself that agent: an upper bound on what the verified crawler meets. robots.txt cannot see any of this.",
  "sites": 275,
  "servedABrowser": 273,
  "refusedAny": 59,
  "byAgent": {
    "GPTBot": 53,
    "OAI-SearchBot": 8,
    "ClaudeBot": 44
  },
  "behindCloudflare": 56,
  "refusedAndBehindCloudflare": 16,
  "refusedAndNotCloudflare": 43,
  "trainingOnly": 45,
  "alsoSearch": 8,
  "statuses": {
    "GPTBot": {
      "0": 2,
      "200": 218,
      "400": 1,
      "403": 19,
      "418": 23,
      "429": 10
    },
    "OAI-SearchBot": {
      "0": 2,
      "200": 264,
      "400": 1,
      "403": 6
    },
    "ClaudeBot": {
      "0": 2,
      "200": 229,
      "400": 1,
      "403": 18,
      "418": 23
    }
  },
  "byServer": {
    "hcdn": {
      "checked": 8,
      "refusedAny": 5
    },
    "LiteSpeed": {
      "checked": 67,
      "refusedAny": 29
    },
    "cloudflare": {
      "checked": 56,
      "refusedAny": 16
    },
    "nginx": {
      "checked": 64,
      "refusedAny": 5
    },
    "Apache": {
      "checked": 32,
      "refusedAny": 2
    },
    "Squarespace": {
      "checked": 9,
      "refusedAny": 0
    },
    "Pepyaka": {
      "checked": 10,
      "refusedAny": 0
    }
  },
  "refusedHowMany": {
    "one": 21,
    "two": 30,
    "all": 8
  },
  "robots": {
    "sample": 275,
    "sampleDeclaringABlock": 3,
    "refusersMatched": 59,
    "refusersDeclaringABlock": 0
  },
  "byTrade": {
    "chiropractor": {
      "checked": 34,
      "refusedAny": 5,
      "GPTBot": 5,
      "OAI-SearchBot": 0,
      "ClaudeBot": 4
    },
    "dentist": {
      "checked": 36,
      "refusedAny": 9,
      "GPTBot": 9,
      "OAI-SearchBot": 0,
      "ClaudeBot": 6
    },
    "electrician": {
      "checked": 35,
      "refusedAny": 9,
      "GPTBot": 8,
      "OAI-SearchBot": 1,
      "ClaudeBot": 8
    },
    "landscaper": {
      "checked": 36,
      "refusedAny": 9,
      "GPTBot": 8,
      "OAI-SearchBot": 0,
      "ClaudeBot": 6
    },
    "physiotherapist": {
      "checked": 33,
      "refusedAny": 7,
      "GPTBot": 6,
      "OAI-SearchBot": 2,
      "ClaudeBot": 6
    },
    "plumber": {
      "checked": 36,
      "refusedAny": 8,
      "GPTBot": 7,
      "OAI-SearchBot": 1,
      "ClaudeBot": 5
    },
    "podiatrist": {
      "checked": 29,
      "refusedAny": 4,
      "GPTBot": 4,
      "OAI-SearchBot": 2,
      "ClaudeBot": 2
    },
    "roofer": {
      "checked": 34,
      "refusedAny": 8,
      "GPTBot": 6,
      "OAI-SearchBot": 2,
      "ClaudeBot": 7
    }
  },
  "byCouncil": {
    "Cardinia": {
      "checked": 21,
      "refusedAny": 6,
      "GPTBot": 6,
      "OAI-SearchBot": 2,
      "ClaudeBot": 4
    },
    "Casey": {
      "checked": 64,
      "refusedAny": 11,
      "GPTBot": 11,
      "OAI-SearchBot": 1,
      "ClaudeBot": 8
    },
    "Hume": {
      "checked": 48,
      "refusedAny": 11,
      "GPTBot": 9,
      "OAI-SearchBot": 2,
      "ClaudeBot": 8
    },
    "Melton": {
      "checked": 45,
      "refusedAny": 14,
      "GPTBot": 12,
      "OAI-SearchBot": 0,
      "ClaudeBot": 13
    },
    "Whittlesea": {
      "checked": 48,
      "refusedAny": 9,
      "GPTBot": 8,
      "OAI-SearchBot": 1,
      "ClaudeBot": 5
    },
    "Wyndham": {
      "checked": 47,
      "refusedAny": 8,
      "GPTBot": 7,
      "OAI-SearchBot": 2,
      "ClaudeBot": 6
    }
  }
}