{
  "tool": {
    "slug": "subframe",
    "name": "Subframe",
    "layer": "design_to_code",
    "vendor": "Subframe",
    "homepage": "https://subframe.com",
    "pricing_url": "https://www.subframe.com/#pricing",
    "docs_url": "https://docs.subframe.com",
    "github_full_name": null,
    "openrouter_app_slug": null,
    "status": "active",
    "status_note": null,
    "status_changed_on": null,
    "acquired_by": null,
    "default_model": null,
    "default_model_note": null,
    "byo_key": false,
    "open_source": false,
    "license": null,
    "pricing_model": "subscription",
    "description": "Design tool that ships an MCP server so coding agents can drive it directly.",
    "tags": [
      "design",
      "mcp"
    ],
    "gh_stars": null,
    "gh_forks": null,
    "gh_archived": null,
    "gh_pushed_at": null,
    "gh_days_since_push": null,
    "gh_maintenance": null,
    "gh_dead": null,
    "gh_star_delta_30d": null,
    "or_rank": null,
    "or_tokens_week": null,
    "last_pricing_check": "2026-09-26T08:45:30.104+00:00",
    "last_change_at": "2026-09-19T09:09:05.068+00:00",
    "curated_on": "2026-08-02",
    "created_at": "2026-08-01T14:15:16.205602+00:00",
    "updated_at": "2026-09-26T08:45:54.318+00:00",
    "claimed_at": null,
    "claimed_by": null,
    "claim_method": null
  },
  "plans": [
    {
      "id": 3944,
      "tool_slug": "subframe",
      "plan_name": "Kitchen",
      "price_monthly_usd": null,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": false,
      "limits": {
        "unread": true,
        "quota_lines": []
      },
      "limits_text": null,
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "unread",
      "sort_order": 0,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    },
    {
      "id": 3945,
      "tool_slug": "subframe",
      "plan_name": "Explorations",
      "price_monthly_usd": null,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": false,
      "limits": {
        "unread": true,
        "quota_lines": []
      },
      "limits_text": null,
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "unread",
      "sort_order": 1,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    },
    {
      "id": 3946,
      "tool_slug": "subframe",
      "plan_name": "A · ship",
      "price_monthly_usd": null,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": false,
      "limits": {
        "unread": true,
        "quota_lines": []
      },
      "limits_text": null,
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "unread",
      "sort_order": 2,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    },
    {
      "id": 3947,
      "tool_slug": "subframe",
      "plan_name": "Browser",
      "price_monthly_usd": null,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": false,
      "limits": {
        "unread": true,
        "quota_lines": []
      },
      "limits_text": null,
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "unread",
      "sort_order": 3,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    },
    {
      "id": 3948,
      "tool_slug": "subframe",
      "plan_name": "selection",
      "price_monthly_usd": null,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": false,
      "limits": {
        "unread": true,
        "quota_lines": []
      },
      "limits_text": null,
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "unread",
      "sort_order": 4,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    },
    {
      "id": 3949,
      "tool_slug": "subframe",
      "plan_name": "Pricing",
      "price_monthly_usd": 0,
      "price_annual_usd": null,
      "seat_based": null,
      "is_free": true,
      "limits": {
        "quota_lines": [
          "Unlimited projects",
          "Unlimited viewers & editors"
        ]
      },
      "limits_text": "Unlimited projects",
      "currency": "USD",
      "source_url": "https://www.subframe.com/#pricing",
      "source": "card",
      "sort_order": 5,
      "captured_at": "2026-09-26T08:45:30.104+00:00"
    }
  ],
  "changelog": [
    {
      "id": 532,
      "tool_slug": "subframe",
      "kind": "price_change",
      "severity": "high",
      "headline": "Subframe Pro fell from $29 to $20",
      "detail": "The Pro tier on the Subframe pricing page moved from $29 to $20, a 31% decrease. Plan names are matched by position on the page, so check the source before quoting this.",
      "before": {
        "plan": "Pro",
        "price_monthly_usd": 29
      },
      "after": {
        "plan": "Pro",
        "price_monthly_usd": 20
      },
      "evidence_url": "https://www.subframe.com/#pricing",
      "fingerprint": "8fd06c903d5006722ce7f359",
      "source": "auto",
      "confidence": "medium",
      "occurred_on": null,
      "detected_at": "2026-09-19T09:09:07.918781+00:00",
      "published": true
    },
    {
      "id": 533,
      "tool_slug": "subframe",
      "kind": "limit_change",
      "severity": "medium",
      "headline": "Subframe changed the quota wording on its pricing page",
      "detail": "Gone: 24 hour; unlimited ai usage custom fonts; unlimited pages unlimited prototypes; unlimited projects unlimited pages; unlimited prototypes unlimited team; unlimited team members limited ai. New: 3 build; unlimited projects unlimited viewers; unlimited viewers. Plan limits often change without the price changing, which is why this is tracked separately.",
      "before": {
        "limits": [
          "24 hour",
          "unlimited ai usage custom fonts",
          "unlimited pages unlimited prototypes",
          "unlimited projects unlimited pages",
          "unlimited prototypes unlimited team",
          "unlimited team members limited ai"
        ]
      },
      "after": {
        "limits": [
          "3 build",
          "unlimited projects unlimited viewers",
          "unlimited viewers"
        ]
      },
      "evidence_url": "https://www.subframe.com/#pricing",
      "fingerprint": "e55ab36f0cd821d6a12a795d",
      "source": "auto",
      "confidence": "low",
      "occurred_on": null,
      "detected_at": "2026-09-19T09:09:07.918781+00:00",
      "published": true
    },
    {
      "id": 483,
      "tool_slug": "subframe",
      "kind": "limit_change",
      "severity": "medium",
      "headline": "Subframe changed the quota wording on its pricing page",
      "detail": "Gone: 10 pages; 2 prototypes. New: unlimited pages unlimited prototypes. Plan limits often change without the price changing, which is why this is tracked separately.",
      "before": {
        "limits": [
          "10 pages",
          "2 prototypes",
          "24 hour",
          "unlimited ai usage custom fonts",
          "unlimited projects unlimited pages",
          "unlimited prototypes unlimited team",
          "unlimited team members limited ai"
        ]
      },
      "after": {
        "limits": [
          "24 hour",
          "unlimited ai usage custom fonts",
          "unlimited pages unlimited prototypes",
          "unlimited projects unlimited pages",
          "unlimited prototypes unlimited team",
          "unlimited team members limited ai"
        ]
      },
      "evidence_url": "https://www.subframe.com/#pricing",
      "fingerprint": "3877549f7eb5122b1b9bb50e",
      "source": "auto",
      "confidence": "low",
      "occurred_on": null,
      "detected_at": "2026-09-15T09:23:53.618793+00:00",
      "published": true
    },
    {
      "id": 70,
      "tool_slug": "subframe",
      "kind": "limit_change",
      "severity": "medium",
      "headline": "Subframe changed the quota wording on its pricing page",
      "detail": "New: 10 pages; 2 prototypes; unlimited ai usage custom fonts; unlimited projects unlimited pages; unlimited prototypes unlimited team; unlimited team members limited ai. Plan limits often change without the price changing, which is why this is tracked separately.",
      "before": {
        "limits": [
          "24 hour"
        ]
      },
      "after": {
        "limits": [
          "10 pages",
          "2 prototypes",
          "24 hour",
          "unlimited ai usage custom fonts",
          "unlimited projects unlimited pages",
          "unlimited prototypes unlimited team",
          "unlimited team members limited ai"
        ]
      },
      "evidence_url": "https://www.subframe.com/#pricing",
      "fingerprint": "48c1f83ea06efe23eb2715ea",
      "source": "auto",
      "confidence": "low",
      "occurred_on": null,
      "detected_at": "2026-08-02T20:47:08.82711+00:00",
      "published": true
    }
  ],
  "model_board": {
    "captured_on": null,
    "rows": []
  },
  "recent_model_usage": [],
  "pricing_history": [
    {
      "captured_at": "2026-09-26T08:45:30.104+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-25T09:20:14.66+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-24T08:55:25.298+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-23T09:11:26.974+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-22T09:31:52.944+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-21T09:19:16.779+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-20T09:10:59.381+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-19T09:08:40.663+00:00",
      "http_status": 200,
      "prices": [
        20
      ],
      "content_hash": "d4412592e589db776afbcf7f887e1dc4",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-18T08:52:37.519+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "d38cbbdc80c6e1bede24de8ca03fa250",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-17T08:38:49.673+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "d38cbbdc80c6e1bede24de8ca03fa250",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-16T09:50:55.847+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "d38cbbdc80c6e1bede24de8ca03fa250",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-15T09:23:26.249+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "d38cbbdc80c6e1bede24de8ca03fa250",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-14T11:20:55.038+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-13T09:51:01.244+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-12T09:50:49.251+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-11T09:50:51.221+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-09T09:50:49.066+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-08T09:52:00.481+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-07T09:50:49.922+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-06T09:50:49.81+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-05T09:51:06.958+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-04T09:50:45.949+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-03T09:50:43.033+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-02T09:51:12.808+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-09-01T09:50:43.428+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-08-31T09:50:43.277+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-08-30T09:50:44.685+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-08-29T09:50:41.802+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-08-27T18:28:24.039+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    },
    {
      "captured_at": "2026-08-26T09:50:41.465+00:00",
      "http_status": 200,
      "prices": [
        29
      ],
      "content_hash": "2d897125e5f5718e86c805732069379a",
      "source_url": "https://www.subframe.com/#pricing",
      "unreachable": null
    }
  ]
}