{
  "city": "lisbon-cafes-bars",
  "days": 30,
  "since": "2026-09-15T17:31:45.133Z",
  "count": 52,
  "sites": 13,
  "byKind": {
    "fixed": 21,
    "broke": 9,
    "grade_up": 7,
    "grade_down": 3,
    "blocked": 4,
    "unblocked": 1,
    "channel": 7,
    "vendor": 0,
    "assistant": 0
  },
  "changes": [
    {
      "id": 13841,
      "at": "2026-10-15T00:19:38.973Z",
      "domain": "casaindependente.com",
      "name": "Casa Independente",
      "page": "https://directindex.org/r/casaindependente.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135324,
        "prev": 18555,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13840,
      "at": "2026-10-15T00:19:38.973Z",
      "domain": "casaindependente.com",
      "name": "Casa Independente",
      "page": "https://directindex.org/r/casaindependente.com",
      "kind": "grade_up",
      "what": "grade F to D (53%)",
      "detail": {
        "scan": 135324,
        "prev": 18555,
        "from": "F",
        "to": "D",
        "pct": 53.4
      }
    },
    {
      "id": 13839,
      "at": "2026-10-15T00:19:38.973Z",
      "domain": "casaindependente.com",
      "name": "Casa Independente",
      "page": "https://directindex.org/r/casaindependente.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135324,
        "prev": 18555,
        "fix": "no_channel"
      }
    },
    {
      "id": 13838,
      "at": "2026-10-15T00:19:28.433Z",
      "domain": "momentbrunchcafe.eu",
      "name": "Moment Brunch Cafe",
      "page": "https://directindex.org/r/momentbrunchcafe.eu",
      "kind": "unblocked",
      "what": "lets AI crawlers in again",
      "detail": {
        "scan": 135312,
        "prev": 18480
      }
    },
    {
      "id": 13837,
      "at": "2026-10-15T00:19:28.433Z",
      "domain": "momentbrunchcafe.eu",
      "name": "Moment Brunch Cafe",
      "page": "https://directindex.org/r/momentbrunchcafe.eu",
      "kind": "fixed",
      "what": "fixed: the server turned AI crawlers away at the door",
      "detail": {
        "scan": 135312,
        "prev": 18480,
        "fix": "edge_blocks"
      }
    },
    {
      "id": 13832,
      "at": "2026-10-15T00:19:26.629Z",
      "domain": "pastelariaocareca.pt",
      "name": "Pastelaria Restelo (Careca)",
      "page": "https://directindex.org/r/pastelariaocareca.pt",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135306,
        "prev": 18559,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13831,
      "at": "2026-10-15T00:19:26.629Z",
      "domain": "pastelariaocareca.pt",
      "name": "Pastelaria Restelo (Careca)",
      "page": "https://directindex.org/r/pastelariaocareca.pt",
      "kind": "grade_up",
      "what": "grade C to B (85%)",
      "detail": {
        "scan": 135306,
        "prev": 18559,
        "from": "C",
        "to": "B",
        "pct": 84.6
      }
    },
    {
      "id": 13830,
      "at": "2026-10-15T00:19:26.629Z",
      "domain": "pastelariaocareca.pt",
      "name": "Pastelaria Restelo (Careca)",
      "page": "https://directindex.org/r/pastelariaocareca.pt",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135306,
        "prev": 18559,
        "fix": "no_channel"
      }
    },
    {
      "id": 13829,
      "at": "2026-10-15T00:19:25.270Z",
      "domain": "miss-can.com",
      "name": "Miss Can - Canto da Sereia Bar",
      "page": "https://directindex.org/r/miss-can.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135303,
        "prev": 18513,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13828,
      "at": "2026-10-15T00:19:25.270Z",
      "domain": "miss-can.com",
      "name": "Miss Can - Canto da Sereia Bar",
      "page": "https://directindex.org/r/miss-can.com",
      "kind": "grade_up",
      "what": "grade D to B (74%)",
      "detail": {
        "scan": 135303,
        "prev": 18513,
        "from": "D",
        "to": "B",
        "pct": 73.8
      }
    },
    {
      "id": 13827,
      "at": "2026-10-15T00:19:25.270Z",
      "domain": "miss-can.com",
      "name": "Miss Can - Canto da Sereia Bar",
      "page": "https://directindex.org/r/miss-can.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135303,
        "prev": 18513,
        "fix": "no_channel"
      }
    },
    {
      "id": 13826,
      "at": "2026-10-15T00:19:25.270Z",
      "domain": "miss-can.com",
      "name": "Miss Can - Canto da Sereia Bar",
      "page": "https://directindex.org/r/miss-can.com",
      "kind": "fixed",
      "what": "fixed: almost no text without JavaScript",
      "detail": {
        "scan": 135303,
        "prev": 18513,
        "fix": "no_text_nojs"
      }
    },
    {
      "id": 13822,
      "at": "2026-10-15T00:19:23.041Z",
      "domain": "caffedimarzano.com",
      "name": "Caffé di Marzano Vermuteira",
      "page": "https://directindex.org/r/caffedimarzano.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135295,
        "prev": 18509,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13821,
      "at": "2026-10-15T00:19:23.041Z",
      "domain": "caffedimarzano.com",
      "name": "Caffé di Marzano Vermuteira",
      "page": "https://directindex.org/r/caffedimarzano.com",
      "kind": "grade_up",
      "what": "grade C to A (89%)",
      "detail": {
        "scan": 135295,
        "prev": 18509,
        "from": "C",
        "to": "A",
        "pct": 89.2
      }
    },
    {
      "id": 13820,
      "at": "2026-10-15T00:19:23.041Z",
      "domain": "caffedimarzano.com",
      "name": "Caffé di Marzano Vermuteira",
      "page": "https://directindex.org/r/caffedimarzano.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135295,
        "prev": 18509,
        "fix": "no_channel"
      }
    },
    {
      "id": 13813,
      "at": "2026-10-15T00:19:21.971Z",
      "domain": "vulisboa.com",
      "name": "Village Underground",
      "page": "https://directindex.org/r/vulisboa.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135290,
        "prev": 18471,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13812,
      "at": "2026-10-15T00:19:21.971Z",
      "domain": "vulisboa.com",
      "name": "Village Underground",
      "page": "https://directindex.org/r/vulisboa.com",
      "kind": "grade_up",
      "what": "grade C to B (83%)",
      "detail": {
        "scan": 135290,
        "prev": 18471,
        "from": "C",
        "to": "B",
        "pct": 83.1
      }
    },
    {
      "id": 13811,
      "at": "2026-10-15T00:19:21.971Z",
      "domain": "vulisboa.com",
      "name": "Village Underground",
      "page": "https://directindex.org/r/vulisboa.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135290,
        "prev": 18471,
        "fix": "no_channel"
      }
    },
    {
      "id": 13810,
      "at": "2026-10-15T00:19:21.051Z",
      "domain": "tascadochico.com",
      "name": "A Tasca do Chico",
      "page": "https://directindex.org/r/tascadochico.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135288,
        "prev": 18458,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13809,
      "at": "2026-10-15T00:19:21.051Z",
      "domain": "tascadochico.com",
      "name": "A Tasca do Chico",
      "page": "https://directindex.org/r/tascadochico.com",
      "kind": "grade_up",
      "what": "grade F to D (49%)",
      "detail": {
        "scan": 135288,
        "prev": 18458,
        "from": "F",
        "to": "D",
        "pct": 49.2
      }
    },
    {
      "id": 13808,
      "at": "2026-10-15T00:19:21.051Z",
      "domain": "tascadochico.com",
      "name": "A Tasca do Chico",
      "page": "https://directindex.org/r/tascadochico.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135288,
        "prev": 18458,
        "fix": "no_channel"
      }
    },
    {
      "id": 13807,
      "at": "2026-10-15T00:19:20.921Z",
      "domain": "fabricalisboa.com",
      "name": "Fabrica Lisboa",
      "page": "https://directindex.org/r/fabricalisboa.com",
      "kind": "broke",
      "what": "new finding: no working HTTPS",
      "detail": {
        "scan": 135287,
        "prev": 18560,
        "fix": "no_https"
      }
    },
    {
      "id": 13806,
      "at": "2026-10-15T00:19:20.921Z",
      "domain": "fabricalisboa.com",
      "name": "Fabrica Lisboa",
      "page": "https://directindex.org/r/fabricalisboa.com",
      "kind": "broke",
      "what": "new finding: robots.txt blocked AI crawlers",
      "detail": {
        "scan": 135287,
        "prev": 18560,
        "fix": "robots_blocks"
      }
    },
    {
      "id": 13794,
      "at": "2026-10-15T00:19:09.511Z",
      "domain": "shakar.pt",
      "name": "Shakar Coffee",
      "page": "https://directindex.org/r/shakar.pt",
      "kind": "grade_down",
      "what": "grade D to F (34%)",
      "detail": {
        "scan": 135255,
        "prev": 18533,
        "from": "D",
        "to": "F",
        "pct": 33.8
      }
    },
    {
      "id": 13793,
      "at": "2026-10-15T00:19:09.511Z",
      "domain": "shakar.pt",
      "name": "Shakar Coffee",
      "page": "https://directindex.org/r/shakar.pt",
      "kind": "broke",
      "what": "new finding: the site turned every visitor without a browser away",
      "detail": {
        "scan": 135255,
        "prev": 18533,
        "fix": "blocked_for_bots"
      }
    },
    {
      "id": 13792,
      "at": "2026-10-15T00:19:09.511Z",
      "domain": "shakar.pt",
      "name": "Shakar Coffee",
      "page": "https://directindex.org/r/shakar.pt",
      "kind": "fixed",
      "what": "fixed: no llms.txt",
      "detail": {
        "scan": 135255,
        "prev": 18533,
        "fix": "no_llms_txt"
      }
    },
    {
      "id": 13791,
      "at": "2026-10-15T00:19:09.511Z",
      "domain": "shakar.pt",
      "name": "Shakar Coffee",
      "page": "https://directindex.org/r/shakar.pt",
      "kind": "fixed",
      "what": "fixed: the server turned AI crawlers away at the door",
      "detail": {
        "scan": 135255,
        "prev": 18533,
        "fix": "edge_blocks"
      }
    },
    {
      "id": 13790,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "channel",
      "what": "direct channel: none to own site",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "from": null,
        "to": "first_party"
      }
    },
    {
      "id": 13789,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "blocked",
      "what": "now turns an AI crawler away at the edge",
      "detail": {
        "scan": 135254,
        "prev": 18452
      }
    },
    {
      "id": 13788,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "grade_up",
      "what": "grade F to D (46%)",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "from": "F",
        "to": "D",
        "pct": 46.3
      }
    },
    {
      "id": 13787,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "broke",
      "what": "new finding: structured data was incomplete",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "structured_incomplete"
      }
    },
    {
      "id": 13786,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "broke",
      "what": "new finding: the site turned every visitor without a browser away",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "blocked_for_bots"
      }
    },
    {
      "id": 13785,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "fixed",
      "what": "fixed: no llms.txt",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "no_llms_txt"
      }
    },
    {
      "id": 13784,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "fixed",
      "what": "fixed: no booking or ordering path at all",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "no_channel"
      }
    },
    {
      "id": 13783,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "fixed",
      "what": "fixed: no menu or price list",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "menu_none"
      }
    },
    {
      "id": 13782,
      "at": "2026-10-15T00:19:08.696Z",
      "domain": "nespresso.com",
      "name": "Nespresso",
      "page": "https://directindex.org/r/nespresso.com",
      "kind": "fixed",
      "what": "fixed: no structured data for the business",
      "detail": {
        "scan": 135254,
        "prev": 18452,
        "fix": "no_structured"
      }
    },
    {
      "id": 13781,
      "at": "2026-10-15T00:19:07.603Z",
      "domain": "placewithface.pt",
      "name": "Manifest. Lisbon",
      "page": "https://directindex.org/r/placewithface.pt",
      "kind": "blocked",
      "what": "now turns an AI crawler away at the edge",
      "detail": {
        "scan": 135252,
        "prev": 18489
      }
    },
    {
      "id": 13780,
      "at": "2026-10-15T00:19:07.603Z",
      "domain": "placewithface.pt",
      "name": "Manifest. Lisbon",
      "page": "https://directindex.org/r/placewithface.pt",
      "kind": "grade_down",
      "what": "grade D to F (11%)",
      "detail": {
        "scan": 135252,
        "prev": 18489,
        "from": "D",
        "to": "F",
        "pct": 10.8
      }
    },
    {
      "id": 13779,
      "at": "2026-10-15T00:19:07.603Z",
      "domain": "placewithface.pt",
      "name": "Manifest. Lisbon",
      "page": "https://directindex.org/r/placewithface.pt",
      "kind": "broke",
      "what": "new finding: the site turned every visitor without a browser away",
      "detail": {
        "scan": 135252,
        "prev": 18489,
        "fix": "blocked_for_bots"
      }
    },
    {
      "id": 13778,
      "at": "2026-10-15T00:19:07.603Z",
      "domain": "placewithface.pt",
      "name": "Manifest. Lisbon",
      "page": "https://directindex.org/r/placewithface.pt",
      "kind": "fixed",
      "what": "fixed: no llms.txt",
      "detail": {
        "scan": 135252,
        "prev": 18489,
        "fix": "no_llms_txt"
      }
    },
    {
      "id": 13777,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "blocked",
      "what": "now turns an AI crawler away at the edge",
      "detail": {
        "scan": 135251,
        "prev": 18460
      }
    },
    {
      "id": 13776,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "broke",
      "what": "new finding: structured data was incomplete",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "structured_incomplete"
      }
    },
    {
      "id": 13775,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "broke",
      "what": "new finding: the site turned every visitor without a browser away",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "blocked_for_bots"
      }
    },
    {
      "id": 13774,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "fixed",
      "what": "fixed: no llms.txt",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "no_llms_txt"
      }
    },
    {
      "id": 13773,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "fixed",
      "what": "fixed: no menu or price list",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "menu_none"
      }
    },
    {
      "id": 13772,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "fixed",
      "what": "fixed: no structured data for the business",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "no_structured"
      }
    },
    {
      "id": 13771,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "fixed",
      "what": "fixed: almost no text without JavaScript",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "no_text_nojs"
      }
    },
    {
      "id": 13770,
      "at": "2026-10-15T00:19:07.346Z",
      "domain": "ogilinsirishpub.com",
      "name": "O'Gilins",
      "page": "https://directindex.org/r/ogilinsirishpub.com",
      "kind": "fixed",
      "what": "fixed: no working HTTPS",
      "detail": {
        "scan": 135251,
        "prev": 18460,
        "fix": "no_https"
      }
    },
    {
      "id": 13769,
      "at": "2026-10-15T00:19:04.475Z",
      "domain": "tr3slisboa.com",
      "name": "TR3S Lisboa",
      "page": "https://directindex.org/r/tr3slisboa.com",
      "kind": "blocked",
      "what": "now turns an AI crawler away at the edge",
      "detail": {
        "scan": 135246,
        "prev": 18455
      }
    },
    {
      "id": 13768,
      "at": "2026-10-15T00:19:04.475Z",
      "domain": "tr3slisboa.com",
      "name": "TR3S Lisboa",
      "page": "https://directindex.org/r/tr3slisboa.com",
      "kind": "grade_down",
      "what": "grade C to F (29%)",
      "detail": {
        "scan": 135246,
        "prev": 18455,
        "from": "C",
        "to": "F",
        "pct": 29.2
      }
    },
    {
      "id": 13767,
      "at": "2026-10-15T00:19:04.475Z",
      "domain": "tr3slisboa.com",
      "name": "TR3S Lisboa",
      "page": "https://directindex.org/r/tr3slisboa.com",
      "kind": "broke",
      "what": "new finding: the site turned every visitor without a browser away",
      "detail": {
        "scan": 135246,
        "prev": 18455,
        "fix": "blocked_for_bots"
      }
    },
    {
      "id": 13766,
      "at": "2026-10-15T00:19:04.475Z",
      "domain": "tr3slisboa.com",
      "name": "TR3S Lisboa",
      "page": "https://directindex.org/r/tr3slisboa.com",
      "kind": "fixed",
      "what": "fixed: no llms.txt",
      "detail": {
        "scan": 135246,
        "prev": 18455,
        "fix": "no_llms_txt"
      }
    }
  ]
}