{
  "schema_version": 1,
  "policy_version": "readiness-1",
  "status": "Provisional editorial metascores published separately; stricter matched-test readiness remains unchanged.",
  "editorial_summary": {
    "providers": 10,
    "scored_providers": 10,
    "review_records": 35,
    "included_publication_ratings": 28,
    "excluded_records": 7
  },
  "release_gate": "These readiness-1 checks concern exact-tier/platform/test-window evidence. They are not the eligibility rules for the separately labelled provider-level editorial opinion aggregation in editorial-1. A matched-test synthesis still requires its own weights, coverage thresholds and disagreement rules.",
  "rules": {
    "scale": {
      "label": "Original scale",
      "meaning": "Keep a finite rating, its bounds and category. A missing rating is not zero."
    },
    "scope": {
      "label": "Separate review questions",
      "meaning": "Overall editorial verdicts, category scores and customer ratings are separate lanes."
    },
    "mixed_plan": {
      "label": "Separate paid and free",
      "meaning": "A mixed free/premium verdict is not a separately scored paid result."
    },
    "tier": {
      "label": "Exact tested tier",
      "meaning": "Match the tested subscription to a named tier; a provider’s current cheapest offer cannot fill this gap."
    },
    "platform": {
      "label": "Actual tested platform",
      "meaning": "Record the tested device/OS. An available app or a publisher’s general method is not a per-provider test record."
    },
    "test_window": {
      "label": "Actual test window",
      "meaning": "Record test start/end dates separately from article publication, editing and collection dates."
    },
    "lineage": {
      "label": "Test-data lineage",
      "meaning": "Review publisher families, reused data and syndication before treating inputs as independent."
    },
    "protocol": {
      "label": "Protocol",
      "meaning": "Identify the actual connection protocol for a performance observation."
    },
    "sample_count": {
      "label": "Sample count",
      "meaning": "Record the number of measurements behind a performance statistic."
    },
    "app_version": {
      "label": "App/version",
      "meaning": "Identify the tested client version rather than assuming today’s app."
    },
    "routes": {
      "label": "Matched routes",
      "meaning": "Record the tested endpoints/routes. Normalizing a baseline does not make different routes equivalent."
    },
    "provisional": {
      "label": "Performance hold",
      "meaning": "Keep provisional observations outside score calculations until their limitations are resolved."
    }
  },
  "counts": {
    "review_records": 35,
    "publications": 5,
    "source_families": 4,
    "overall_rating_records": 30,
    "category_only_records": 5,
    "eligible_overall_inputs": 0,
    "performance_observations": 20,
    "performance_cohorts": 3,
    "eligible_performance_inputs": 0
  },
  "reviews": [
    {
      "review_id": "expressvpn-techradar",
      "provider": "expressvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.1",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:00:36+00:00",
      "article_modified_at": "2026-04-22T15:55:49+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "expressvpn-toms-guide",
      "provider": "expressvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.45",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T10:07:22+00:00",
      "article_modified_at": "2026-04-22T13:35:15+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "nordvpn-techradar",
      "provider": "nordvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.5",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:04:38+00:00",
      "article_modified_at": "2026-11-04T16:36:03+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "nordvpn-toms-guide",
      "provider": "nordvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.45",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-28T11:42:12+00:00",
      "article_modified_at": "2026-10-20T16:03:27+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "pia-techradar",
      "provider": "pia",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "3.95",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:12:51+00:00",
      "article_modified_at": "2026-07-03T10:07:08+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "pia-toms-guide",
      "provider": "pia",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.05",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-11-07T15:04:16+00:00",
      "article_modified_at": "2026-08-20T13:46:36+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "protonvpn-techradar",
      "provider": "protonvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.2",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:18:05+00:00",
      "article_modified_at": "2026-10-23T10:52:28+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "protonvpn-toms-guide",
      "provider": "protonvpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.35",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-11-02T12:47:21+00:00",
      "article_modified_at": "2026-10-28T13:04:42+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "surfshark-techradar",
      "provider": "surfshark",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.25",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:08:58+00:00",
      "article_modified_at": "2026-10-06T20:18:13+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "surfshark-toms-guide",
      "provider": "surfshark",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4.45",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-28T16:44:31+00:00",
      "article_modified_at": "2026-04-10T15:11:40+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "expressvpn-top10vpn",
      "provider": "expressvpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "9.4",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-09-22",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "expressvpn-rtings",
      "provider": "expressvpn",
      "lane": "category",
      "family": "rtings",
      "original_rating": null,
      "category_ratings": [
        {
          "category": "Private Browsing",
          "value": "6.2",
          "best": "10",
          "worst": "0"
        }
      ],
      "plan_scope": "Paid service; see source for tested tier",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-03-31",
      "article_modified_at": "2026-07-13",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "scope",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "nordvpn-top10vpn",
      "provider": "nordvpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "9.2",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-10-22",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "nordvpn-rtings",
      "provider": "nordvpn",
      "lane": "category",
      "family": "rtings",
      "original_rating": null,
      "category_ratings": [
        {
          "category": "Private Browsing",
          "value": "6.4",
          "best": "10",
          "worst": "0"
        }
      ],
      "plan_scope": "Paid service; see source for tested tier",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-03-31",
      "article_modified_at": "2026-07-13",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "scope",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "pia-top10vpn",
      "provider": "pia",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "8.7",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-10-14",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "pia-rtings",
      "provider": "pia",
      "lane": "category",
      "family": "rtings",
      "original_rating": null,
      "category_ratings": [
        {
          "category": "Private Browsing",
          "value": "5.6",
          "best": "10",
          "worst": "0"
        }
      ],
      "plan_scope": "Paid service; see source for tested tier",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-03-31",
      "article_modified_at": "2026-07-13",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "scope",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "protonvpn-top10vpn",
      "provider": "protonvpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "9.1",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-10-14",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "protonvpn-rtings",
      "provider": "protonvpn",
      "lane": "category",
      "family": "rtings",
      "original_rating": null,
      "category_ratings": [
        {
          "category": "Private Browsing",
          "value": "7.5",
          "best": "10",
          "worst": "0"
        }
      ],
      "plan_scope": "Paid service; see source for tested tier",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-03-31",
      "article_modified_at": "2026-10-14",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "scope",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "surfshark-top10vpn",
      "provider": "surfshark",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "9.0",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-09-14",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "surfshark-rtings",
      "provider": "surfshark",
      "lane": "category",
      "family": "rtings",
      "original_rating": null,
      "category_ratings": [
        {
          "category": "Private Browsing",
          "value": "5.4",
          "best": "10",
          "worst": "0"
        }
      ],
      "plan_scope": "Paid service; see source for tested tier",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-03-31",
      "article_modified_at": "2026-07-13",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "scope",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "cyberghost-top10vpn",
      "provider": "cyberghost",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "8.3",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-10-14",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "cyberghost-techradar",
      "provider": "cyberghost",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "3.9",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "See publisher for tested plan",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:30:27+00:00",
      "article_modified_at": "2026-02-26T16:41:49+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "hideme-top10vpn",
      "provider": "hideme",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "8.3",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-07-10",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "hideme-techradar",
      "provider": "hideme",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "See publisher for tested plan",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:39:37+00:00",
      "article_modified_at": "2025-12-08T10:33:44+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "purevpn-top10vpn",
      "provider": "purevpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "6.5",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2024-11-25",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "purevpn-techradar",
      "provider": "purevpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "4",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "See publisher for tested plan",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-10-24T09:51:51+00:00",
      "article_modified_at": "2025-03-07T04:20:45+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privadovpn-top10vpn",
      "provider": "privadovpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "7.3",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-08-27",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privadovpn-techradar",
      "provider": "privadovpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "3.7",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "See publisher for tested plan",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-04-13T07:07:02+00:00",
      "article_modified_at": "2024-12-18T13:56:10+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privatevpn-top10vpn",
      "provider": "privatevpn",
      "lane": "overall_editorial",
      "family": "top10vpn",
      "original_rating": {
        "value": "7.4",
        "best": "10",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service; exact subscription not captured",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": null,
      "article_modified_at": "2026-08-19",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privatevpn-techradar",
      "provider": "privatevpn",
      "lane": "overall_editorial",
      "family": "future",
      "original_rating": {
        "value": "2.5",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "See publisher for tested plan",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2022-04-14T16:54:31+00:00",
      "article_modified_at": "2023-08-15T10:07:32+00:00",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "cyberghost-pcworld",
      "provider": "cyberghost",
      "lane": "overall_editorial",
      "family": "pcworld",
      "original_rating": {
        "value": "4",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2026-01-22T15:00:00Z",
      "article_modified_at": "2026-01-22T15:01:09Z",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "hideme-pcworld",
      "provider": "hideme",
      "lane": "overall_editorial",
      "family": "pcworld",
      "original_rating": {
        "value": "4",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2026-03-17T14:00:00Z",
      "article_modified_at": "2026-03-17T14:00:29Z",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "purevpn-pcworld",
      "provider": "purevpn",
      "lane": "overall_editorial",
      "family": "pcworld",
      "original_rating": {
        "value": "3.5",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2025-05-19T14:30:00Z",
      "article_modified_at": "2025-05-19T14:30:00Z",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privadovpn-pcworld",
      "provider": "privadovpn",
      "lane": "overall_editorial",
      "family": "pcworld",
      "original_rating": {
        "value": "4",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Mixed free/premium article",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2024-09-27T14:30:00Z",
      "article_modified_at": "2025-06-18T14:39:58Z",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "mixed_plan",
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    },
    {
      "review_id": "privatevpn-pcworld",
      "provider": "privatevpn",
      "lane": "overall_editorial",
      "family": "pcworld",
      "original_rating": {
        "value": "3.5",
        "best": "5",
        "worst": "0"
      },
      "category_ratings": [],
      "plan_scope": "Paid service",
      "tested_tier_id": null,
      "tested_platform": null,
      "test_period": null,
      "article_published_at": "2024-03-25T13:00:00Z",
      "article_modified_at": "2025-06-19T08:23:34Z",
      "eligible_for_overall_pool": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage"
      ]
    }
  ],
  "performance": [
    {
      "observation_id": "expressvpn-rtings-performance",
      "provider": "expressvpn",
      "cohort": "rtings-rolling",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Publisher says performance testing is ongoing. Exact rolling-window dates, per-provider protocol and sample count are not captured."
    },
    {
      "observation_id": "nordvpn-rtings-performance",
      "provider": "nordvpn",
      "cohort": "rtings-rolling",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Publisher says performance testing is ongoing. Exact rolling-window dates, per-provider protocol and sample count are not captured."
    },
    {
      "observation_id": "pia-rtings-performance",
      "provider": "pia",
      "cohort": "rtings-rolling",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Publisher says performance testing is ongoing. Exact rolling-window dates, per-provider protocol and sample count are not captured."
    },
    {
      "observation_id": "protonvpn-rtings-performance",
      "provider": "protonvpn",
      "cohort": "rtings-rolling",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Publisher says performance testing is ongoing. Exact rolling-window dates, per-provider protocol and sample count are not captured."
    },
    {
      "observation_id": "surfshark-rtings-performance",
      "provider": "surfshark",
      "cohort": "rtings-rolling",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Publisher says performance testing is ongoing. Exact rolling-window dates, per-provider protocol and sample count are not captured."
    },
    {
      "observation_id": "expressvpn-top10vpn-local",
      "provider": "expressvpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Local result on publisher’s fixed baseline. Actual dates, raw sample count and exact endpoints are not captured."
    },
    {
      "observation_id": "nordvpn-top10vpn-local",
      "provider": "nordvpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Local result on publisher’s fixed baseline. Actual dates, raw sample count and exact endpoints are not captured."
    },
    {
      "observation_id": "pia-top10vpn-local",
      "provider": "pia",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Local result on publisher’s fixed baseline. Actual dates, raw sample count and exact endpoints are not captured."
    },
    {
      "observation_id": "protonvpn-top10vpn-local",
      "provider": "protonvpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Local result on publisher’s fixed baseline. Actual dates, raw sample count and exact endpoints are not captured."
    },
    {
      "observation_id": "surfshark-top10vpn-local",
      "provider": "surfshark",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Local result on publisher’s fixed baseline. Actual dates, raw sample count and exact endpoints are not captured."
    },
    {
      "observation_id": "cyberghost-top10vpn-local",
      "provider": "cyberghost",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test dates, sample count, protocol, platform and endpoints not captured."
    },
    {
      "observation_id": "hideme-top10vpn-local",
      "provider": "hideme",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test dates, sample count, protocol, platform and endpoints not captured."
    },
    {
      "observation_id": "purevpn-top10vpn-local",
      "provider": "purevpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test dates, sample count, protocol, platform and endpoints not captured."
    },
    {
      "observation_id": "privadovpn-top10vpn-local",
      "provider": "privadovpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test dates, sample count, protocol, platform and endpoints not captured."
    },
    {
      "observation_id": "privatevpn-top10vpn-local",
      "provider": "privatevpn",
      "cohort": "top10vpn-local",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test dates, sample count, protocol, platform and endpoints not captured."
    },
    {
      "observation_id": "cyberghost-pcworld-performance",
      "provider": "cyberghost",
      "cohort": "pcworld-multi-route",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test window, raw baseline speeds, sample count and exact endpoints not captured. Historical article evidence, not a current retest."
    },
    {
      "observation_id": "hideme-pcworld-performance",
      "provider": "hideme",
      "cohort": "pcworld-multi-route",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test window, raw baseline speeds, sample count and exact endpoints not captured. Historical article evidence, not a current retest."
    },
    {
      "observation_id": "purevpn-pcworld-performance",
      "provider": "purevpn",
      "cohort": "pcworld-multi-route",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test window, raw baseline speeds, sample count and exact endpoints not captured. Historical article evidence, not a current retest."
    },
    {
      "observation_id": "privadovpn-pcworld-performance",
      "provider": "privadovpn",
      "cohort": "pcworld-multi-route",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test window, raw baseline speeds, sample count and exact endpoints not captured. Historical article evidence, not a current retest."
    },
    {
      "observation_id": "privatevpn-pcworld-performance",
      "provider": "privatevpn",
      "cohort": "pcworld-multi-route",
      "eligible": false,
      "hold_reasons": [
        "tier",
        "platform",
        "test_window",
        "lineage",
        "protocol",
        "sample_count",
        "app_version",
        "routes",
        "provisional"
      ],
      "source_limitation": "Actual test window, raw baseline speeds, sample count and exact endpoints not captured. Historical article evidence, not a current retest."
    }
  ]
}
