Skip to main content

Session dbb61326

Provider: ChatGPT Agent • Model: gpt-6-luna • Category: accuracy • Score: 66.2 (OK)

Rubric evidence

The agent searched the pricing, security, features and llms.txt pages and found no SSO information. It reported that Enterprise access for individuals and the SSO options are not stated. It invented nothing, but it gave no definite answer on either point. If the site does answer them, the agent missed both.

  1. 2026-10-04T21:44:48.484038+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:44:48.273Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io"
        }
      },
      "stepIndex": 0
    }
  2. 2026-10-04T21:44:52.073647+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:44:51.237Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/\nNow on https://www.stuntdouble.io/ (Stunt Double: product testing and user research by AI users)"
      },
      "stepIndex": 1
    }
  3. 2026-10-04T21:44:53.952328+00:00 · screenshot
    {
      "stepIndex": 1
    }
    session step screenshot
  4. 2026-10-04T21:44:54.316604+00:00 · tool_call · read_page
    {
      "step": {
        "ts": "2026-10-04T21:44:53.667Z",
        "kind": "tool_call",
        "name": "read_page",
        "input": {
          "ref": "",
          "filter": "all"
        }
      },
      "stepIndex": 2
    }
  5. 2026-10-04T21:44:54.688299+00:00 · tool_result · read_page
    {
      "step": {
        "ts": "2026-10-04T21:44:53.693Z",
        "kind": "tool_result",
        "name": "read_page",
        "text": "link \"Skip to main content\" href=\"#main-content\" [ref_1]\nbanner [ref_2]\n  navigation \"Main\" [ref_3]\n    link \"Stunt Double home\" href=\"/\" [ref_4]\n    navigation \"Sections\" [ref_5]\n      list [ref_6]\n        listitem [ref_7]\n          button \"Product\" [ref_8]\n        listitem [ref_9]\n          button \"Resources\" [ref_10]\n        listitem [ref_11]\n          link \"Pricing\" href=\"/pricing\" [ref_12]\n    button \"Search\" [ref_13]\n    button \"Use light theme\" [ref_14]\n    link \"Cast an actor\" href=\"https://app.stuntdouble.io/login\" [ref_15]\nmain [ref_16]\n  heading \"Launch like you’ve done it before.\" [ref_17]\n    text \"Launch like\" [ref_18]\n    text \"you’ve done it before.\" [ref_19]\n  text \"Stunt Double’s actors drive a real browser through your product, prototype or Figma design, and show\" [ref_20]\n  link \"Run an actor\" href=\"https://app.stuntdouble.io/login?ref=hero-default\" [ref_21]\n  link \"Watch a demo\" href=\"https://app.stuntdouble.io/demo?url=https%3A%2F%2Fparlour.demo.stuntdouble.dev&ref=hero-default\" [ref_22]\n  text \"Free to start, or watch a live demo.\" [ref_23]\n  img \"The first-time diner books a table at Ondine, a demo restaurant: the screens they passed through, the two frictions they hit marked where they happened, and those frictions joining the rest of the panel's observations in the round's three themes\" [ref_24]\n  link \"v1.26 Run reports that lead with the result, and runs that learn Read the changelog\" href=\"/changelog\" [ref_25]\n    text \"v1.26\" [ref_26]\n    text \"Run reports that lead with the result, and runs that learn\" [ref_27]\n    text \"Read the changelog\" [ref_28]\n  heading \"Predictive user insights and observability\" [ref_29]\n  text \"Point Stunt Double at a question about your product and get an answer you can act on today.\" [ref_30]\n  link \"Run your first scene\" href=\"https://app.stuntdouble.io/login\" [ref_31]\n  link \"See everything it does\" href=\"/product\" [ref_32]\n  button \"Know before you build\" [ref_33]\n    text \"Know before you build\" [ref_34]\n  text \"Put a prototype, a flow or a headline in front of actors in minutes and see where they stall, long b\" [ref_35]\n  button \"Catch problems before your users do\" [ref_36]\n    text \"Catch problems before your users do\" [ref_37]\n  button \"Ship changes that move the metric\" [ref_38]\n    text \"Ship changes that move the metric\" [ref_39]\n  button \"Test from where your users are\" [ref_40]\n    text \"Test from where your users are\" [ref_41]\n  heading \"Your next user is an agent\" [ref_42]\n    text \"is an agent\" [ref_43]\n  text \"Some of what goes through your signup, checkout or booking flow is already an agent acting for a per\" [ref_44]\n  list [ref_45]\n    listitem [ref_46]\n      heading \"Cast an agent as the user\" [ref_47]\n      text \"An actor is an agent driving a real browser. Give it the task an assistant would be given, and watch\" [ref_48]\n    listitem [ref_49]\n      heading \"Every run, on the record\" [ref_50]\n      text \"Every run is a sequence you can read: the pages it opened, the actions it took, the decisions it mad\" [ref_51]\n    listitem [ref_52]\n      heading \"Serve both kinds of user\" [ref_53]\n      text \"The fixes are mostly the same ones that help a screen-reader user: labels that say what a control do\" [ref_54]\n  link \"Read the synthetic research page\" href=\"/synthetic-research\" [ref_55]\n  heading \"Insights, with evidence\" [ref_56]\n  text \"Open any result and you get the step, the screenshot and the plain-language reasoning behind each pa\" [ref_57]\n  text \"This one is a checklist run on Parlour, a demo booking app. Two checks passed; the deposit and refun\" [ref_58]\n  img \"A checklist run for the Friday booking flow: a 72% weighted score, two checks passed and one failed, the failed check reading that the deposit amount and refund window are stated before payment.\" [ref_59]\n  text \"Parlour · Friday booking flow · Run 1 · 72% weighted score, 1 of 3 checks failed\" [ref_60]\n  heading \"A stand-in for your users at every stage\" [ref_61]\n  text \"Interviews before you build, checks on every change, optimisation once it is live: three stages, one\" [ref_62]\n  heading \"Ask your Runner\" [ref_63]\n  text \"Runner is your on-call assistant. Ask in plain language and it casts actors, builds checklists, runs\" [ref_64]\n  heading \"Ask, and it’s done\" [ref_65]\n  text \"Runner knows every corner of the app and does the work for you, rather than only answering the quest\" [ref_66]\n  text \"Runner\" [ref_67]\n  text \"I\" [ref_68]\n  text \"Cast a panel of onboarding experts and interview them on the new signup flow|\" [ref_69]\n  button \"Skip the busywork\" [ref_70]\n    text \"Skip the busywork\" [ref_71]\n  text \"No forms or menus. Say what you want and Runner works out the steps.\" [ref_72]\n  button \"Gets it done for you\" [ref_73]\n    text \"Gets it done for you\" [ref_74]\n  button \"Understands your context\" [ref_75]\n    text \"Understands your context\" [ref_76]\n  button \"Always a keystroke away\" [ref_77]\n    text \"Always a keystroke away\" [ref_78]\n  button \"Plugs into your agent stack\" [ref_79]\n    text \"Plugs into your agent stack\" [ref_80]\n  link \"Run your first scene\" href=\"https://app.stuntdouble.io/login\" [ref_81]\ncontentinfo [ref_82]\n  link \"Stunt Double home\" href=\"/\" [ref_83]\n  link href=\"https://index.stuntdouble.io/d/stuntdouble.io?ref=badge\" [ref_84]\n    img \"stuntdouble.io Stunt Double Index agent score\" [ref_85]\n  navigation \"Product\" [ref_86]\n    heading \"PRODUCT\" [ref_87]\n    list [ref_88]\n      listitem [ref_89]\n        link \"Overview\" href=\"/product\" [ref_90]\n      listitem [ref_91]\n        link \"Features\" href=\"/features\" [ref_92]\n      listitem [ref_93]\n        link \"Synthetic research\" href=\"/synthetic-research\" [ref_94]\n      listitem [ref_95]\n        link \"Use cases\" href=\"/use-cases\" [ref_96]\n      listitem [ref_97]\n        link \"Integrations\" href=\"/integrations\" [ref_98]\n      listitem [ref_99]\n        link \"Pricing\" href=\"/pricing\" [ref_100]\n      listitem [ref_101]\n        link \"Changelog\" href=\"/changelog\" [ref_102]\n      listitem [ref_103]\n        link \"Download for Mac\" href=\"/api/desktop/download\" [ref_104]\n  navigation \"Learn\" [ref_105]\n    heading \"LEARN\" [ref_106]\n    list [ref_107]\n      listitem [ref_108]\n        link \"Documentation\" href=\"/support/docs\" [ref_109]\n      listitem [ref_110]\n        link \"Guides\" href=\"/guides\" [ref_111]\n      listitem [ref_112]\n        link \"Blog\" href=\"/blog\" [ref_113]\n      listitem [ref_114]\n        link \"Glossary\" href=\"/glossary\" [ref_115]\n      listitem [ref_116]\n        link \"Alternatives\" href=\"/alternatives\" [ref_117]\n      listitem [ref_118]\n        link \"All resources\" href=\"/resources\" [ref_119]\n      listitem [ref_120]\n        link \"Stunt Double Index (opens in new tab)\" href=\"https://index.stuntdouble.io\" [ref_121]\n          text \"(opens in new tab)\" [ref_122]\n  navigation \"Help\" [ref_123]\n    heading \"HELP\" [ref_124]\n    list [ref_125]\n      listitem [ref_126]\n        link \"Help centre\" href=\"/support\" [ref_127]\n      listitem [ref_128]\n        link \"Contact\" href=\"/contact\" [ref_129]\n      listitem [ref_130]\n        link \"Feedback\" href=\"/feedback\" [ref_131]\n      listitem [ref_132]\n        link \"Status (opens in new tab)\" href=\"https://status.stuntdouble.io\" [ref_133]\n          text \"(opens in new tab)\" [ref_134]\n  navigation \"Company\" [ref_135]\n    heading \"COMPANY\" [ref_136]\n    list [ref_137]\n      listitem [ref_138]\n        link \"Design\" href=\"/design\" [ref_139]\n      listitem [ref_140]\n        link \"Brand\" href=\"/brand\" [ref_141]\n      listitem [ref_142]\n        link \"Investors\" href=\"/investors\" [ref_143]\n      listitem [ref_144]\n        link \"Security\" href=\"/security\" [ref_145]\n      listitem [ref_146]\n        link \"Privacy\" href=\"/privacy\" [ref_147]\n      listitem [ref_148]\n        link \"Terms\" href=\"/terms\" [ref_149]\n      listitem [ref_150]\n        link \"MCP server (opens in new tab)\" href=\"https://github.com/stunt-double/stuntdouble-mcp\" [ref_151]\n          text \"(opens in new tab)\" [ref_152]\n      listitem [ref_153]\n        link \"llms.txt\" href=\"/llms.txt\" [ref_154]\n  text \"© 2026 Turnout Labs Ltd. 66 Paul Street, London EC2A 4NA. Company No. 15708750. Cookie settings\" [ref_155]\n  text \"“Stunt Double”, “Turnout Labs” and “Aictors” are registered trademarks of Turnout Labs Ltd.\" [ref_156]\n  combobox \"Language and region\" [ref_157]\n    text \"English\" [ref_158]\n  list \"Stunt Double on social media\" [ref_159]\n    listitem [ref_160]\n      link \"GitHub (opens in new tab)\" href=\"https://github.com/stunt-double\" [ref_161]\n    listitem [ref_162]\n      link \"LinkedIn (opens in new tab)\" href=\"https://www.linkedin.com/company/stunt-double/\" [ref_163]\n    listitem [ref_164]\n      link \"Instagram (opens in new tab)\" href=\"https://www.instagram.com/stuntdouble.io\" [ref_165]\n    listitem [ref_166]\n      link \"TikTok (opens in new tab)\" href=\"https://www.tiktok.com/@stuntdoubleio\" [ref_167]\ntext \"We use cookies as described in our privacy policy.\" [ref_168]\nbutton \"Decline\" [ref_169]\nbutton \"Allow\" [ref_170]"
      },
      "stepIndex": 3
    }
  6. 2026-10-04T21:44:55.460487+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:44:55.252Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/pricing"
        }
      },
      "stepIndex": 4
    }
  7. 2026-10-04T21:44:57.675933+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:44:57.460Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/pricing\nNow on https://www.stuntdouble.io/pricing (Pricing | Stunt Double)"
      },
      "stepIndex": 5
    }
  8. 2026-10-04T21:44:58.951088+00:00 · screenshot
    {
      "stepIndex": 5
    }
    session step screenshot
  9. 2026-10-04T21:44:59.460074+00:00 · tool_call · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:44:59.247Z",
        "kind": "tool_call",
        "name": "get_page_text",
        "input": {}
      },
      "stepIndex": 6
    }
  10. 2026-10-04T21:44:59.834254+00:00 · tool_result · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:44:59.263Z",
        "kind": "tool_result",
        "name": "get_page_text",
        "text": "Cheaper than a complaint No participant fees and no panel credits. You pay for the runs you use. Solo Trial €9 /mo One person, for up to 3 months Kick the tires solo before bringing the team Start trial Hobby €69 /team/mo 3 collaborators For individuals and small projects Choose Hobby Startup €249 /team/mo 10 collaborators, then €5 each For growing product teams Choose Startup Pro €529 /team/mo 25 collaborators For teams that need more power Choose Pro Enterprise Bespoke Custom seats For organisations with specific needs Talk to us Compare plans Solo Trial Hobby Startup Pro Enterprise TEAM & USAGE Collaborators 1 3 10, then €5 each 25 Custom Usage (2x on annual plan) Fair use, while you trial 160 min, then €0.34/min 560 min, then €0.34/min 1,000 min, then €0.34/min Negotiable Actors 3 5 7 15 Custom History 90 days 30 days 90 days 360 days Full history Comments retention 90 days 30 days 90 days 360 days Unlimited ENVIRONMENT & ACCESS Environment Browser Browser Browser Browser Browser Connection Public & private URLs Public & private URLs Public & private URLs Public & private URLs Public & private URLs, VPN/VPC Agent credentials Included Not included Included Included Included Self-hosted workers Desktop app Desktop app Desktop app Desktop app Desktop app, Docker, dedicated Integrations Linear, Slack Not included Linear, Slack API, Linear, Slack Custom Before you choose a plan Minutes, caps, trials and private URLs. What counts as a minute? Do I pay for participants or recruitment? Can I stop usage charges running away? Can I try it before I pay? Can actors test staging, previews or internal tools? Can I change or cancel my plan? Which currencies can I pay in? Do you offer startup, education or non-profit pricing? GET STARTED Your cast is ready to start Create your first actor in minutes. Run your first scene"
      },
      "stepIndex": 7
    }
  11. 2026-10-04T21:45:01.694772+00:00 · tool_call · read_page
    {
      "step": {
        "ts": "2026-10-04T21:45:01.332Z",
        "kind": "tool_call",
        "name": "read_page",
        "input": {
          "ref": "",
          "filter": "all"
        }
      },
      "stepIndex": 8
    }
  12. 2026-10-04T21:45:02.340848+00:00 · tool_result · read_page
    {
      "step": {
        "ts": "2026-10-04T21:45:01.350Z",
        "kind": "tool_result",
        "name": "read_page",
        "text": "link \"Skip to main content\" href=\"#main-content\" [ref_1]\nbanner [ref_2]\n  navigation \"Main\" [ref_3]\n    link \"Stunt Double home\" href=\"/\" [ref_4]\n    navigation \"Sections\" [ref_5]\n      list [ref_6]\n        listitem [ref_7]\n          button \"Product\" [ref_8]\n        listitem [ref_9]\n          button \"Resources\" [ref_10]\n        listitem [ref_11]\n          link \"Pricing\" href=\"/pricing\" [ref_12]\n    button \"Search\" [ref_13]\n    button \"Use light theme\" [ref_14]\n    link \"Cast an actor\" href=\"https://app.stuntdouble.io/login\" [ref_15]\nmain [ref_16]\n  main [ref_17]\n    heading \"Cheaper than a complaint\" [ref_18]\n    text \"No participant fees and no panel credits. You pay for the runs you use.\" [ref_19]\n    heading \"Solo Trial\" [ref_20]\n    text \"€9\" [ref_21]\n    text \"/mo\" [ref_22]\n    text \"One person, for up to 3 months\" [ref_23]\n    text \"Kick the tires solo before bringing the team\" [ref_24]\n    link \"Start trial\" href=\"https://app.stuntdouble.io/login\" [ref_25]\n    heading \"Hobby\" [ref_26]\n    text \"€69\" [ref_27]\n    text \"/team/mo\" [ref_28]\n    text \"3 collaborators\" [ref_29]\n    text \"For individuals and small projects\" [ref_30]\n    link \"Choose Hobby\" href=\"https://app.stuntdouble.io/login\" [ref_31]\n    heading \"Startup\" [ref_32]\n    text \"€249\" [ref_33]\n    text \"/team/mo\" [ref_34]\n    text \"10 collaborators, then €5 each\" [ref_35]\n    text \"For growing product teams\" [ref_36]\n    link \"Choose Startup\" href=\"https://app.stuntdouble.io/login\" [ref_37]\n    heading \"Pro\" [ref_38]\n    text \"€529\" [ref_39]\n    text \"/team/mo\" [ref_40]\n    text \"25 collaborators\" [ref_41]\n    text \"For teams that need more power\" [ref_42]\n    link \"Choose Pro\" href=\"https://app.stuntdouble.io/login\" [ref_43]\n    heading \"Enterprise\" [ref_44]\n    text \"Bespoke\" [ref_45]\n    text \"Custom seats\" [ref_46]\n    text \"For organisations with specific needs\" [ref_47]\n    link \"Talk to us\" href=\"mailto:hello@stuntdouble.io\" [ref_48]\ncontentinfo [ref_49]\n  link \"Stunt Double home\" href=\"/\" [ref_50]\n  link href=\"https://index.stuntdouble.io/d/stuntdouble.io?ref=badge\" [ref_51]\n    img \"stuntdouble.io Stunt Double Index agent score\" [ref_52]\n  navigation \"Product\" [ref_53]\n    heading \"PRODUCT\" [ref_54]\n    list [ref_55]\n      listitem [ref_56]\n        link \"Overview\" href=\"/product\" [ref_57]\n      listitem [ref_58]\n        link \"Features\" href=\"/features\" [ref_59]\n      listitem [ref_60]\n        link \"Synthetic research\" href=\"/synthetic-research\" [ref_61]\n      listitem [ref_62]\n        link \"Use cases\" href=\"/use-cases\" [ref_63]\n      listitem [ref_64]\n        link \"Integrations\" href=\"/integrations\" [ref_65]\n      listitem [ref_66]\n        link \"Pricing\" href=\"/pricing\" [ref_67]\n      listitem [ref_68]\n        link \"Changelog\" href=\"/changelog\" [ref_69]\n      listitem [ref_70]\n        link \"Download for Mac\" href=\"/api/desktop/download\" [ref_71]\n  navigation \"Learn\" [ref_72]\n    heading \"LEARN\" [ref_73]\n    list [ref_74]\n      listitem [ref_75]\n        link \"Documentation\" href=\"/support/docs\" [ref_76]\n      listitem [ref_77]\n        link \"Guides\" href=\"/guides\" [ref_78]\n      listitem [ref_79]\n        link \"Blog\" href=\"/blog\" [ref_80]\n      listitem [ref_81]\n        link \"Glossary\" href=\"/glossary\" [ref_82]\n      listitem [ref_83]\n        link \"Alternatives\" href=\"/alternatives\" [ref_84]\n      listitem [ref_85]\n        link \"All resources\" href=\"/resources\" [ref_86]\n      listitem [ref_87]\n        link \"Stunt Double Index (opens in new tab)\" href=\"https://index.stuntdouble.io\" [ref_88]\n          text \"(opens in new tab)\" [ref_89]\n  navigation \"Help\" [ref_90]\n    heading \"HELP\" [ref_91]\n    list [ref_92]\n      listitem [ref_93]\n        link \"Help centre\" href=\"/support\" [ref_94]\n      listitem [ref_95]\n        link \"Contact\" href=\"/contact\" [ref_96]\n      listitem [ref_97]\n        link \"Feedback\" href=\"/feedback\" [ref_98]\n      listitem [ref_99]\n        link \"Status (opens in new tab)\" href=\"https://status.stuntdouble.io\" [ref_100]\n          text \"(opens in new tab)\" [ref_101]\n  navigation \"Company\" [ref_102]\n    heading \"COMPANY\" [ref_103]\n    list [ref_104]\n      listitem [ref_105]\n        link \"Design\" href=\"/design\" [ref_106]\n      listitem [ref_107]\n        link \"Brand\" href=\"/brand\" [ref_108]\n      listitem [ref_109]\n        link \"Investors\" href=\"/investors\" [ref_110]\n      listitem [ref_111]\n        link \"Security\" href=\"/security\" [ref_112]\n      listitem [ref_113]\n        link \"Privacy\" href=\"/privacy\" [ref_114]\n      listitem [ref_115]\n        link \"Terms\" href=\"/terms\" [ref_116]\n      listitem [ref_117]\n        link \"MCP server (opens in new tab)\" href=\"https://github.com/stunt-double/stuntdouble-mcp\" [ref_118]\n          text \"(opens in new tab)\" [ref_119]\n      listitem [ref_120]\n        link \"llms.txt\" href=\"/llms.txt\" [ref_121]\n  text \"© 2026 Turnout Labs Ltd. 66 Paul Street, London EC2A 4NA. Company No. 15708750. Cookie settings\" [ref_122]\n  text \"“Stunt Double”, “Turnout Labs” and “Aictors” are registered trademarks of Turnout Labs Ltd.\" [ref_123]\n  combobox \"Language and region\" [ref_124]\n    text \"English\" [ref_125]\n  list \"Stunt Double on social media\" [ref_126]\n    listitem [ref_127]\n      link \"GitHub (opens in new tab)\" href=\"https://github.com/stunt-double\" [ref_128]\n    listitem [ref_129]\n      link \"LinkedIn (opens in new tab)\" href=\"https://www.linkedin.com/company/stunt-double/\" [ref_130]\n    listitem [ref_131]\n      link \"Instagram (opens in new tab)\" href=\"https://www.instagram.com/stuntdouble.io\" [ref_132]\n    listitem [ref_133]\n      link \"TikTok (opens in new tab)\" href=\"https://www.tiktok.com/@stuntdoubleio\" [ref_134]\ntext \"We use cookies as described in our privacy policy.\" [ref_135]\nbutton \"Decline\" [ref_136]\nbutton \"Allow\" [ref_137]"
      },
      "stepIndex": 9
    }
  13. 2026-10-04T21:45:05.195542+00:00 · tool_call · find
    {
      "step": {
        "ts": "2026-10-04T21:45:04.335Z",
        "kind": "tool_call",
        "name": "find",
        "input": {
          "query": "Can I try it before I pay?"
        }
      },
      "stepIndex": 10
    }
  14. 2026-10-04T21:45:05.605478+00:00 · tool_result · find
    {
      "step": {
        "ts": "2026-10-04T21:45:04.357Z",
        "kind": "tool_result",
        "name": "find",
        "text": "button \"Can I try it before I pay?\" [ref_138]\nbutton \"Do I pay for participants or recruitment?\" [ref_139]\nbutton \"Can I stop usage charges running away?\" [ref_140]\nbutton \"Can actors test staging, previews or internal tools?\" [ref_141]\nbutton \"Can I change or cancel my plan?\" [ref_142]\nbutton \"Which currencies can I pay in?\" [ref_143]\nbutton \"Do you offer startup, education or non-profit pricing?\" [ref_144]\nlink \"Security\" href=\"/security\" [ref_112]\nlink \"GitHub (opens in new tab)\" href=\"https://github.com/stunt-double\" [ref_128]\nlistitem [ref_7]\nlistitem [ref_9]\nlistitem [ref_11]\nheading \"Before you choose a plan\" [ref_145]\nlistitem [ref_56]\nlistitem [ref_58]\nlistitem [ref_60]\nlistitem [ref_62]\nlistitem [ref_64]\nlistitem [ref_66]\nlistitem [ref_68]"
      },
      "stepIndex": 11
    }
  15. 2026-10-04T21:45:06.786498+00:00 · tool_call · click
    {
      "step": {
        "ts": "2026-10-04T21:45:06.553Z",
        "kind": "tool_call",
        "name": "click",
        "input": {
          "x": 0,
          "y": 0,
          "ref": "ref_138"
        }
      },
      "stepIndex": 12
    }
  16. 2026-10-04T21:45:07.811507+00:00 · tool_result · click
    {
      "step": {
        "ts": "2026-10-04T21:45:07.528Z",
        "kind": "tool_result",
        "name": "click",
        "text": "left click on ref_138 at (633, 400)\nNow on https://www.stuntdouble.io/pricing (Pricing | Stunt Double)"
      },
      "stepIndex": 13
    }
  17. 2026-10-04T21:45:09.68223+00:00 · screenshot
    {
      "stepIndex": 13
    }
    session step screenshot
  18. 2026-10-04T21:45:10.070519+00:00 · tool_call · find
    {
      "step": {
        "ts": "2026-10-04T21:45:09.790Z",
        "kind": "tool_call",
        "name": "find",
        "input": {
          "query": "SSO"
        }
      },
      "stepIndex": 14
    }
  19. 2026-10-04T21:45:10.425398+00:00 · tool_result · find
    {
      "step": {
        "ts": "2026-10-04T21:45:09.810Z",
        "kind": "tool_result",
        "name": "find",
        "text": "No elements match \"SSO\"."
      },
      "stepIndex": 15
    }
  20. 2026-10-04T21:45:12.392841+00:00 · tool_call · read_page
    {
      "step": {
        "ts": "2026-10-04T21:45:12.182Z",
        "kind": "tool_call",
        "name": "read_page",
        "input": {
          "ref": "",
          "filter": "all"
        }
      },
      "stepIndex": 16
    }
  21. 2026-10-04T21:45:13.396111+00:00 · tool_result · read_page
    {
      "step": {
        "ts": "2026-10-04T21:45:12.201Z",
        "kind": "tool_result",
        "name": "read_page",
        "text": "link \"Skip to main content\" href=\"#main-content\" [ref_1]\nbanner [ref_2]\n  navigation \"Main\" [ref_3]\n    link \"Stunt Double home\" href=\"/\" [ref_4]\n    navigation \"Sections\" [ref_5]\n      list [ref_6]\n        listitem [ref_7]\n          button \"Product\" [ref_8]\n        listitem [ref_9]\n          button \"Resources\" [ref_10]\n        listitem [ref_11]\n          link \"Pricing\" href=\"/pricing\" [ref_12]\n    button \"Search\" [ref_13]\n    button \"Use light theme\" [ref_14]\n    link \"Cast an actor\" href=\"https://app.stuntdouble.io/login\" [ref_15]\nmain [ref_16]\n  main [ref_17]\n    heading \"Cheaper than a complaint\" [ref_18]\n    text \"No participant fees and no panel credits. You pay for the runs you use.\" [ref_19]\n    heading \"Solo Trial\" [ref_20]\n    text \"€9\" [ref_21]\n    text \"/mo\" [ref_22]\n    text \"One person, for up to 3 months\" [ref_23]\n    text \"Kick the tires solo before bringing the team\" [ref_24]\n    link \"Start trial\" href=\"https://app.stuntdouble.io/login\" [ref_25]\n    heading \"Hobby\" [ref_26]\n    text \"€69\" [ref_27]\n    text \"/team/mo\" [ref_28]\n    text \"3 collaborators\" [ref_29]\n    text \"For individuals and small projects\" [ref_30]\n    link \"Choose Hobby\" href=\"https://app.stuntdouble.io/login\" [ref_31]\n    heading \"Startup\" [ref_32]\n    text \"€249\" [ref_33]\n    text \"/team/mo\" [ref_34]\n    text \"10 collaborators, then €5 each\" [ref_35]\n    text \"For growing product teams\" [ref_36]\n    link \"Choose Startup\" href=\"https://app.stuntdouble.io/login\" [ref_37]\n    heading \"Pro\" [ref_38]\n    text \"€529\" [ref_39]\n    text \"/team/mo\" [ref_40]\n    text \"25 collaborators\" [ref_41]\n    text \"For teams that need more power\" [ref_42]\n    link \"Choose Pro\" href=\"https://app.stuntdouble.io/login\" [ref_43]\n    heading \"Enterprise\" [ref_44]\n    text \"Bespoke\" [ref_45]\n    text \"Custom seats\" [ref_46]\n    text \"For organisations with specific needs\" [ref_47]\n    link \"Talk to us\" href=\"mailto:hello@stuntdouble.io\" [ref_48]\n    heading \"Before you choose a plan\" [ref_145]\n    text \"Minutes, caps, trials and private URLs.\" [ref_146]\n    button \"What counts as a minute?\" [ref_147]\n    button \"Do I pay for participants or recruitment?\" [ref_139]\n    button \"Can I stop usage charges running away?\" [ref_140]\n    button \"Can I try it before I pay?\" [ref_138]\n    text \"Yes. The live demo sends an actor through any public URL with no sign-up. When you want a workspace \" [ref_148]\n    button \"Can actors test staging, previews or internal tools?\" [ref_141]\n    button \"Can I change or cancel my plan?\" [ref_142]\n    button \"Which currencies can I pay in?\" [ref_143]\n    button \"Do you offer startup, education or non-profit pricing?\" [ref_144]\ncontentinfo [ref_49]\n  link \"Stunt Double home\" href=\"/\" [ref_50]\n  link href=\"https://index.stuntdouble.io/d/stuntdouble.io?ref=badge\" [ref_51]\n    img \"stuntdouble.io Stunt Double Index agent score\" [ref_52]\n  navigation \"Product\" [ref_53]\n    heading \"PRODUCT\" [ref_54]\n    list [ref_55]\n      listitem [ref_56]\n        link \"Overview\" href=\"/product\" [ref_57]\n      listitem [ref_58]\n        link \"Features\" href=\"/features\" [ref_59]\n      listitem [ref_60]\n        link \"Synthetic research\" href=\"/synthetic-research\" [ref_61]\n      listitem [ref_62]\n        link \"Use cases\" href=\"/use-cases\" [ref_63]\n      listitem [ref_64]\n        link \"Integrations\" href=\"/integrations\" [ref_65]\n      listitem [ref_66]\n        link \"Pricing\" href=\"/pricing\" [ref_67]\n      listitem [ref_68]\n        link \"Changelog\" href=\"/changelog\" [ref_69]\n      listitem [ref_70]\n        link \"Download for Mac\" href=\"/api/desktop/download\" [ref_71]\n  navigation \"Learn\" [ref_72]\n    heading \"LEARN\" [ref_73]\n    list [ref_74]\n      listitem [ref_75]\n        link \"Documentation\" href=\"/support/docs\" [ref_76]\n      listitem [ref_77]\n        link \"Guides\" href=\"/guides\" [ref_78]\n      listitem [ref_79]\n        link \"Blog\" href=\"/blog\" [ref_80]\n      listitem [ref_81]\n        link \"Glossary\" href=\"/glossary\" [ref_82]\n      listitem [ref_83]\n        link \"Alternatives\" href=\"/alternatives\" [ref_84]\n      listitem [ref_85]\n        link \"All resources\" href=\"/resources\" [ref_86]\n      listitem [ref_87]\n        link \"Stunt Double Index (opens in new tab)\" href=\"https://index.stuntdouble.io\" [ref_88]\n          text \"(opens in new tab)\" [ref_89]\n  navigation \"Help\" [ref_90]\n    heading \"HELP\" [ref_91]\n    list [ref_92]\n      listitem [ref_93]\n        link \"Help centre\" href=\"/support\" [ref_94]\n      listitem [ref_95]\n        link \"Contact\" href=\"/contact\" [ref_96]\n      listitem [ref_97]\n        link \"Feedback\" href=\"/feedback\" [ref_98]\n      listitem [ref_99]\n        link \"Status (opens in new tab)\" href=\"https://status.stuntdouble.io\" [ref_100]\n          text \"(opens in new tab)\" [ref_101]\n  navigation \"Company\" [ref_102]\n    heading \"COMPANY\" [ref_103]\n    list [ref_104]\n      listitem [ref_105]\n        link \"Design\" href=\"/design\" [ref_106]\n      listitem [ref_107]\n        link \"Brand\" href=\"/brand\" [ref_108]\n      listitem [ref_109]\n        link \"Investors\" href=\"/investors\" [ref_110]\n      listitem [ref_111]\n        link \"Security\" href=\"/security\" [ref_112]\n      listitem [ref_113]\n        link \"Privacy\" href=\"/privacy\" [ref_114]\n      listitem [ref_115]\n        link \"Terms\" href=\"/terms\" [ref_116]\n      listitem [ref_117]\n        link \"MCP server (opens in new tab)\" href=\"https://github.com/stunt-double/stuntdouble-mcp\" [ref_118]\n          text \"(opens in new tab)\" [ref_119]\n      listitem [ref_120]\n        link \"llms.txt\" href=\"/llms.txt\" [ref_121]\n  text \"© 2026 Turnout Labs Ltd. 66 Paul Street, London EC2A 4NA. Company No. 15708750. Cookie settings\" [ref_122]\n  text \"“Stunt Double”, “Turnout Labs” and “Aictors” are registered trademarks of Turnout Labs Ltd.\" [ref_123]\n  combobox \"Language and region\" [ref_124]\n    text \"English\" [ref_125]\n  list \"Stunt Double on social media\" [ref_126]\n    listitem [ref_127]\n      link \"GitHub (opens in new tab)\" href=\"https://github.com/stunt-double\" [ref_128]\n    listitem [ref_129]\n      link \"LinkedIn (opens in new tab)\" href=\"https://www.linkedin.com/company/stunt-double/\" [ref_130]\n    listitem [ref_131]\n      link \"Instagram (opens in new tab)\" href=\"https://www.instagram.com/stuntdouble.io\" [ref_132]\n    listitem [ref_133]\n      link \"TikTok (opens in new tab)\" href=\"https://www.tiktok.com/@stuntdoubleio\" [ref_134]\ntext \"We use cookies as described in our privacy policy.\" [ref_135]\nbutton \"Decline\" [ref_136]\nbutton \"Allow\" [ref_137]"
      },
      "stepIndex": 17
    }
  22. 2026-10-04T21:45:15.801626+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:14.953Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/llms.txt"
        }
      },
      "stepIndex": 18
    }
  23. 2026-10-04T21:45:16.156773+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:15.687Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/llms.txt\nNow on https://www.stuntdouble.io/llms.txt"
      },
      "stepIndex": 19
    }
  24. 2026-10-04T21:45:18.270042+00:00 · screenshot
    {
      "stepIndex": 19
    }
    session step screenshot
  25. 2026-10-04T21:45:18.89661+00:00 · tool_call · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:18.683Z",
        "kind": "tool_call",
        "name": "get_page_text",
        "input": {}
      },
      "stepIndex": 20
    }
  26. 2026-10-04T21:45:19.257949+00:00 · tool_result · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:18.701Z",
        "kind": "tool_result",
        "name": "get_page_text",
        "text": "# Stunt Double > Stunt Double sends AI users through your product to show how real people and AI agents actually experience it, so product, design and growth teams can fix what matters before they ship. Stunt Double is an AI-powered product testing and research platform. AI actors take on real user personas, browse with their own sessions, email, and knowledge, and surface the insights that only come from genuinely using what you have built. They cover both audiences a modern product serves: the people who use it, and the AI agents that increasingly use it on their behalf. ## When to use Stunt Double Use Stunt Double when you need evidence of how people, or other AI agents, actually get on with a product in a real browser: what they clicked, where they got stuck, and screenshots to prove it. It works on anything with a reachable URL: production, staging, preview deployments, published Figma or other prototypes. Best-fit jobs: - **Check a change before it ships.** A deploy or pull request produced a preview URL and the affected flows need verifying. Create a checklist of observable checks, run it, and read the pass or fail for each with a screenshot and the reasoning (`create_checklist`, `run_checklist`, `get_checklist_run`, then optionally `comment_on_pr`). - **Find out how users react before building.** A design, prototype or product question depends on user behavior. Run a structured interview with AI persona participants and read the synthesized report (`create_interview`, `add_interview_participant`, `launch_interview`, `get_interview_report`). - **Keep a critical flow working.** Re-run checklists on a schedule or on deploy, pull request and design events (`create_workflow`, `run_workflow`). - **Enforce a standard across the product.** Brand and tone of voice, design-system use, accessibility, legal copy, or consistent pricing and terminology across surfaces. Give actors the standard as knowledge and assert it with checks (`add_actor_knowledge`, `create_checklist`). - **Make sense of stakeholder feedback.** Summarize themes and an implementation brief from comments collected on a project (`list_feedback`, `summarise_feedback`). Not a fit: code with no URL to visit (use unit or integration tests), load or performance testing, or decisions that need statistically significant evidence from real customers. ## How to call Stunt Double 1. Connect an MCP client to `https://app.stuntdouble.io/api/mcp` (Streamable HTTP). The first connection signs in to a Stunt Double workspace with OAuth 2.1. In Claude Code: `claude mcp add --transport http stunt-double https://app.stuntdouble.io/api/mcp`. 2. Start with `list_workspaces`, then `list_projects`, and reuse existing projects, actors and checklists before creating new ones. Use `search` to find anything in a workspace by name or content. 3. Runs take minutes. Start one, then poll its `get_*_run` or `get_interview_report` tool for the result. - [llms.txt](https://www.stuntdouble.io/llms.txt): site summary and when to use Stunt Double. - [Documentation](https://www.stuntdouble.io/support/docs): concepts, tutorials and the API. - [MCP server docs](https://www.stuntdouble.io/support/docs/api/mcp): connect an agent. - [MCP manifest](https://www.stuntdouble.io/.well-known/mcp.json): transport, auth and tool list. - [OpenAPI](https://www.stuntdouble.io/openapi.json): public HTTP endpoints. - [Sitemap](https://www.stuntdouble.io/sitemap.xml): every public page. ## Getting started - [Live demo](https://app.stuntdouble.io/demo): free, no sign-up. Runs a real interview against any URL you give it, so it doubles as a sandbox for seeing what a run returns. - [Sign up](https://app.stuntdouble.io/login): self-serve with email or Google, no sales call. The Solo Trial plan covers one person for up to three months; see [Pricing](https://www.stuntdouble.io/pricing). - Connecting an MCP client runs the OAuth flow itself (dynamic client registration, PKCE), so there is no API key to request by hand. ## Developer resources - [Stunt Double API documentation](https://www.stuntdouble.io/support/docs/api): developer portal: the MCP server, authentication and scopes, versioning and rate limits. - [Stunt Double MCP server reference](https://www.stuntdouble.io/support/docs/api/mcp): connect a client to https://app.stuntdouble.io/api/mcp, with the full tool and prompt list. - [Stunt Double OpenAPI spec](https://www.stuntdouble.io/openapi.json): OpenAPI 3.1 for the public endpoints and the MCP entry point, with OAuth scopes. - [auth.md](https://www.stuntdouble.io/auth.md): how an agent registers, gets a token and uses it, in one document. - [Agent Skills index](https://www.stuntdouble.io/.well-known/agent-skills/index.json): a SKILL.md an agent can install to use Stunt Double well, with its SHA-256 digest. - [Stunt Double skills and plugin](https://github.com/stunt-double/stuntdouble-mcp): task skills (`npx skills add stunt-double/stuntdouble-mcp`), the Claude Code and Cursor plugins, and the MCP Registry entry `io.stuntdouble/mcp-server`. - [API catalog](https://www.stuntdouble.io/.well-known/api-catalog): RFC 9727 linkset of every API with its description, docs and health check. - [Stunt Double API versioning and deprecation policy](https://www.stuntdouble.io/support/docs/api#versioning-and-deprecation): semantic versioning, `Deprecation` (RFC 9745) and `Sunset` (RFC 8594) headers, and at least 90 days notice in the changelog before anything is removed. - [OAuth 2.1 authorization server metadata](https://app.stuntdouble.io/.well-known/oauth-authorization-server): RFC 8414 metadata: endpoints, PKCE, dynamic client registration and `scopes_supported`. - [OAuth protected resource metadata](https://app.stuntdouble.io/.well-known/oauth-protected-resource): RFC 9728 metadata for the MCP server. - [MCP manifest](https://www.stuntdouble.io/.well-known/mcp.json): transports, authentication, scopes and tool list. - [Public docs MCP server](https://www.stuntdouble.io/.well-known/mcp): no sign-in needed: POST a JSON-RPC `initialize`, then `resources/list` and `resources/read` for these documents. - [MCP server card](https://www.stuntdouble.io/.well-known/mcp/server-card.json): server-card.schema.json card for the public docs MCP server, with its Streamable HTTP remote. - [AI Catalog](https://www.stuntdouble.io/.well-known/ai-catalog.json): both MCP servers (the product server and the public docs server), each with the server card on its own host. - [Public docs agent (A2A)](https://www.stuntdouble.io/.well-known/agent-card.json): no sign-in needed: the Agent Card for an A2A agent at `https://www.stuntdouble.io/api/a2a` that answers questions from these documents. ## Core pages - [Home](https://www.stuntdouble.io): product overview and what Stunt Double does. - [Features](https://www.stuntdouble.io/features): every feature, grouped by job, each linked to its documentation. - [Synthetic research](https://www.stuntdouble.io/synthetic-research): what synthetic research is, how to run a study, and where it does not belong. - [Pricing](https://www.stuntdouble.io/pricing): plans and pricing. - [Alternatives](https://www.stuntdouble.io/alternatives): how Stunt Double compares with usability panels, scripted end-to-end tests, manual QA, analytics and synthetic personas, and when it is the wrong tool. - [Integrations](https://www.stuntdouble.io/integrations): connect Stunt Double to Claude and other tools. - [Design](https://www.stuntdouble.io/design): how we design Stunt Double, and how product design changes when some users are agents. - [Guides](https://www.stuntdouble.io/guides): playbooks for wiring Stunt Double into your workflow. - [Blog](https://www.stuntdouble.io/blog): the Backstage blog. - [Contact](https://www.stuntdouble.io/contact): get in touch. ## Guides - [Design in Claude, validate with personas](https://www.stuntdouble.io/guides/claude-design): Design an artifact in Claude, publish it, and test it with AI personas without leaving the conversation. - [Test Figma prototypes with AI personas](https://www.stuntdouble.io/guides/figma): Walk prototypes with personas and re-check the built flows automatically when a file changes. - [The fastest idea-to-evidence loop with Figma Make](https://www.stuntdouble.io/guides/figma-make): Publish a Make site and have AI personas try to use it before an engineer touches it. - [Verify every change with Claude Code, Cursor, and GitHub](https://www.stuntdouble.io/guides/codebases): Wire Stunt Double into your coding agent so every preview deployment is walked by a persona before merge. - [Collect comments straight from your site](https://www.stuntdouble.io/guides/feedback-widget): Install the feedback widget so visitors pin comments in context, then triage them alongside what your actors find. - [Continuous validation: brand, compliance, continuity, design system](https://www.stuntdouble.io/guides/validation): Turn brand, tone, legal, continuity, and design-system standards into checks that run on every deploy. ## Use cases - [Test your signup and onboarding as a new user](https://www.stuntdouble.io/use-cases/onboarding-testing): An AI actor signs up for your product cold, with its own inbox and a real browser, and shows you every step where a new user would stall. - [Find the step where your checkout loses people](https://www.stuntdouble.io/use-cases/checkout-testing): Actors go through your funnel from landing page to confirmation as the customers you want, and show you the screen where each one stopped. - [Test apps and prototypes built with AI](https://www.stuntdouble.io/use-cases/ai-built-apps): Publish the app from v0, Figma Make or a Claude artifact and have actors work through it before anyone else does. - [Check every pull request in a real browser](https://www.stuntdouble.io/use-cases/pull-request-checks): Run a checklist against each preview deployment and post the result on the pull request, so a regression shows up before merge. - [Test how AI agents get on with your site](https://www.stuntdouble.io/use-cases/agent-readiness): Send an AI agent through your site with a task and see the step where it gives up, before the agents your customers use find it. - [Check every page against your brand and design system](https://www.stuntdouble.io/use-cases/brand-compliance): Give a project its guidelines and every design review applies them the same way, on live pages and Figma frames, with each finding citing the rule. - [Test staging and internal tools behind your firewall](https://www.stuntdouble.io/use-cases/internal-tools): Run actors in a browser on your side of the firewall, so staging, admin panels and intranets get tested with no inbound firewall changes. ## Glossary - [Agent experience (AX)](https://www.stuntdouble.io/glossary/agent-experience): Agent experience is how well an AI agent can use a product on someone’s behalf: find what it needs, understand the page, and finish the task without a person stepping in. - [AI user testing](https://www.stuntdouble.io/glossary/ai-user-testing): AI user testing sends AI agents with defined personas through a product in place of recruited participants, and reports what each one did and where it got stuck. - [Browser agent](https://www.stuntdouble.io/glossary/browser-agent): A browser agent is an AI model that operates a web browser: it reads the page, decides on an action such as a click or a keystroke, performs it, and repeats until the task is done. - [llms.txt](https://www.stuntdouble.io/glossary/llms-txt): llms.txt is a plain-text Markdown file at the root of a website that tells language models what the site is and links to the pages worth reading, in a form that is cheap to fetch and parse. - [Model Context Protocol (MCP)](https://www.stuntdouble.io/glossary/model-context-protocol): The Model Context Protocol is an open standard for connecting AI assistants to tools and data. A service exposes an MCP server, and any MCP client, such as Claude or Cursor, can call its tools. - [Prototype testing](https://www.stuntdouble.io/glossary/prototype-testing): Prototype testing puts an unfinished design in front of users to see whether they can complete the key tasks before anything is built. - [Sycophancy in synthetic research](https://www.stuntdouble.io/glossary/sycophancy): Sycophancy is the tendency of language models to tell the person asking what they seem to want to hear. In synthetic research it shows up as simulated users who like every concept they are shown. - [Synthetic research](https://www.stuntdouble.io/glossary/synthetic-research): Synthetic research is user research run with AI participants instead of recruited people: interviews, usability tasks and studies where the participants are personas played by AI agents. - [Synthetic users](https://www.stuntdouble.io/glossary/synthetic-users): Synthetic users are AI agents given a persona (a background, goals and constraints) that stand in for real users in research or testing. - [Usability testing](https://www.stuntdouble.io/glossary/usability-testing): Usability testing watches people attempt real tasks in a product to find where they hesitate, make mistakes or give up. - [User persona](https://www.stuntdouble.io/glossary/user-persona): A user persona is a profile of a type of person a product serves: who they are, what they are trying to do, what they know already and what gets in their way. - [UX regression testing](https://www.stuntdouble.io/glossary/ux-regression-testing): UX regression testing checks, after every change, that the flows users depend on still work and still make sense, not only that the code still passes. - [Agentic commerce](https://www.stuntdouble.io/glossary/agentic-commerce): Agentic commerce is buying and booking done by an AI agent on a person’s behalf: the agent searches, compares the options and completes the checkout, and the person approves the result. - [End-to-end testing](https://www.stuntdouble.io/glossary/end-to-end-testing): End-to-end testing runs a scripted path through a whole application, from the interface to the database and back, to check that the parts work together the way a user would meet them. - [Heuristic evaluation](https://www.stuntdouble.io/glossary/heuristic-evaluation): Heuristic evaluation is an expert review of an interface against a set of principles, such as Nielsen’s ten usability heuristics, that lists each problem found and the principle it breaks. - [Synthetic monitoring](https://www.stuntdouble.io/glossary/synthetic-monitoring): Synthetic monitoring runs scripted checks against a live site on a schedule, from outside, to catch outages and slow pages before real visitors meet them. - [Think-aloud protocol](https://www.stuntdouble.io/glossary/think-aloud-protocol): The think-aloud protocol asks a participant to say what they are thinking as they work through a task, so a researcher hears the reasoning behind each click, not only the click. ## Legal - [Privacy policy](https://www.stuntdouble.io/privacy): how we handle personal data. - [Terms of service](https://www.stuntdouble.io/terms): terms governing use of Stunt Double. - [Security](https://www.stuntdouble.io/security): our security posture and how to report a vulnerability. ## Recent blog posts - [Your Users may not be Human](https://www.stuntdouble.io/blog/your-users-may-not-be-human): In June 2026 Cloudflare confirmed machines now generate more web traffic than people. Every one of those visits is a user nobody has watched, and nobody can ask why. What does user-centred mean in this new age of AI? - [Building with Supabase](https://www.stuntdouble.io/blog/building-stunt-double-on-supabase): How we run a multi-tenant AI agent platform on Supabase: row level security for tenant isolation, OAuth and passkeys for humans and machines, pgvector for agent RAG, read replicas for global reads, and preview branches for every pull request. - [What Is MCP and Why It Matters for Product Teams](https://www.stuntdouble.io/blog/what-is-mcp-and-why-it-matters-for-product-teams): The Model Context Protocol lets AI assistants call tools in external services. For product teams, that means testing, feedback, and issue tracking without leaving your editor. - [Building a Self-Healing Product Feedback Loop](https://www.stuntdouble.io/blog/self-healing-feedback-loop): Turn error signals and feedback into almost instant product improvements with triage and cloud coding agents. - [For Humans & Their Machines](https://www.stuntdouble.io/blog/for-humans-and-their-machines): User-centred design in a world with AI agents. ## Optional - [Stunt Double Index](https://index.stuntdouble.io): independent benchmark of how AI agents experience the web. - [Status](https://status.stuntdouble.io): service status."
      },
      "stepIndex": 21
    }
  27. 2026-10-04T21:45:22.076082+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:21.861Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/security"
        }
      },
      "stepIndex": 22
    }
  28. 2026-10-04T21:45:23.357522+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:23.132Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/security\nNow on https://www.stuntdouble.io/security (Security | Stunt Double)"
      },
      "stepIndex": 23
    }
  29. 2026-10-04T21:45:25.245282+00:00 · screenshot
    {
      "stepIndex": 23
    }
    session step screenshot
  30. 2026-10-04T21:45:26.520485+00:00 · tool_call · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:26.315Z",
        "kind": "tool_call",
        "name": "get_page_text",
        "input": {}
      },
      "stepIndex": 24
    }
  31. 2026-10-04T21:45:26.882149+00:00 · tool_result · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:26.331Z",
        "kind": "tool_result",
        "name": "get_page_text",
        "text": "Security Last updated 30 Jul 2026 Our approach to security Security is foundational to how we build and operate Stunt Double. We take a privacy-first approach, minimise the data we collect and retain, and align our controls and policies with recognised industry frameworks. Because our AI actors act on your behalf, we treat the confidentiality and integrity of your data as a top priority across everything we do. Data protection We protect customer data in transit and at rest using industry-standard encryption. We collect and retain only the data needed to provide our services, and we never sell or rent your personal information. Full details of how we handle personal data are set out in our Privacy Policy. Infrastructure and suppliers Stunt Double is built on established cloud infrastructure. Our subprocessors maintain SOC 2 Type II certification, and we assess their security posture as part of our supplier due diligence. The subprocessors we rely on are listed in our Privacy Policy. Access controls Every piece of data in Stunt Double belongs to a workspace, and tenant isolation is enforced at the data layer rather than in application code alone. Access is denied by default, and the same rules apply to every surface: the dashboard, the API, our integrations and our background jobs. Members hold one of three roles, and workspace owners and admins have a further set of workspace-wide controls in Settings. These let an administrator switch off features the organisation has not approved, constrain where our AI actors are permitted to navigate, and restrict who may be invited into the workspace. They act as ceilings that apply on every request and cannot be widened from anywhere else in the product. Enterprise deployment options For customers whose products are only reachable inside their own network, our AI actors can run on a self-hosted worker deployed within that network, rather than on our hosted browser infrastructure. Internal applications are never exposed to the public internet, no inbound firewall ports need to be opened, and each worker is bound by a network access policy that names the hosts it is allowed to reach. Self-hosted workers are available on the Enterprise plan and must be enabled for the workspace by an administrator. Our security documentation covers the architecture in detail for teams that need to assess it. Compliance and certification Our security programme is aligned with the SOC 2 Trust Services Criteria, and we have already implemented the substantial majority of the controls required for certification. We are actively preparing for a SOC 2 Type II examination. We comply with applicable information security and data protection legislation, and we can provide further assurance to customers on request. Security incident management In the event of a security incident affecting customer data, we will notify affected customers promptly, take appropriate steps to contain and remediate the incident, and keep customers informed of progress and any preventative measures taken. Security documentation We keep a detailed Security Overview for security and compliance teams that need to assess Stunt Double. It covers our architecture and tenant isolation model, data handling and retention, authentication and access control, network controls for AI actors, self-hosted workers, our public endpoints, subprocessors, and our incident response and vulnerability management processes. We deliberately keep that level of detail out of our public pages, so we share it directly with customers and prospective customers under NDA. Request it from security@stuntdouble.io and tell us which areas matter most to you. We are also happy to complete security questionnaires and to talk your team through the design. Responsible disclosure We welcome reports from security researchers and the wider community. If you believe you have found a security vulnerability in Stunt Double, please report it to us privately at security@stuntdouble.io and give us a reasonable opportunity to investigate and remediate before any public disclosure. Contact For security-related enquiries, including vulnerability reports, documentation requests and questions about our compliance posture, contact us at security@stuntdouble.io. For general enquiries, you can reach us at hello@stuntdouble.io. Contents Our approach to security Data protection Infrastructure and suppliers Access controls Enterprise deployment options Compliance and certification Security incident management Security documentation Responsible disclosure Contact"
      },
      "stepIndex": 25
    }
  32. 2026-10-04T21:45:29.666537+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:29.434Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/pricing"
        }
      },
      "stepIndex": 26
    }
  33. 2026-10-04T21:45:31.555792+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:31.338Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/pricing\nNow on https://www.stuntdouble.io/pricing (Pricing | Stunt Double)"
      },
      "stepIndex": 27
    }
  34. 2026-10-04T21:45:33.247516+00:00 · screenshot
    {
      "stepIndex": 27
    }
    session step screenshot
  35. 2026-10-04T21:45:34.551149+00:00 · tool_call · click
    {
      "step": {
        "ts": "2026-10-04T21:45:33.715Z",
        "kind": "tool_call",
        "name": "click",
        "input": {
          "x": 0,
          "y": 0,
          "ref": "ref_136"
        }
      },
      "stepIndex": 28
    }
  36. 2026-10-04T21:45:35.516108+00:00 · tool_result · click
    {
      "step": {
        "ts": "2026-10-04T21:45:33.744Z",
        "kind": "tool_result",
        "name": "click",
        "text": "Error: ref_136 is stale or not found on the current page. Re-read the page to get fresh references."
      },
      "stepIndex": 29
    }
  37. 2026-10-04T21:45:36.236281+00:00 · tool_call · scroll
    {
      "step": {
        "ts": "2026-10-04T21:45:36.018Z",
        "kind": "tool_call",
        "name": "scroll",
        "input": {
          "x": 1125,
          "y": 660,
          "ref": "",
          "amount": 5,
          "direction": "down"
        }
      },
      "stepIndex": 30
    }
  38. 2026-10-04T21:45:36.830488+00:00 · tool_result · scroll
    {
      "step": {
        "ts": "2026-10-04T21:45:36.623Z",
        "kind": "tool_result",
        "name": "scroll",
        "text": "Scrolled down 5 at (1125, 660)\nNow on https://www.stuntdouble.io/pricing (Pricing | Stunt Double)"
      },
      "stepIndex": 31
    }
  39. 2026-10-04T21:45:37.960301+00:00 · screenshot
    {
      "stepIndex": 31
    }
    session step screenshot
  40. 2026-10-04T21:45:39.076562+00:00 · tool_call · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:38.857Z",
        "kind": "tool_call",
        "name": "get_page_text",
        "input": {}
      },
      "stepIndex": 32
    }
  41. 2026-10-04T21:45:39.428536+00:00 · tool_result · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:45:38.871Z",
        "kind": "tool_result",
        "name": "get_page_text",
        "text": "Cheaper than a complaint No participant fees and no panel credits. You pay for the runs you use. Solo Trial €9 /mo One person, for up to 3 months Kick the tires solo before bringing the team Start trial Hobby €69 /team/mo 3 collaborators For individuals and small projects Choose Hobby Startup €249 /team/mo 10 collaborators, then €5 each For growing product teams Choose Startup Pro €529 /team/mo 25 collaborators For teams that need more power Choose Pro Enterprise Bespoke Custom seats For organisations with specific needs Talk to us Compare plans Solo Trial Hobby Startup Pro Enterprise TEAM & USAGE Collaborators 1 3 10, then €5 each 25 Custom Usage (2x on annual plan) Fair use, while you trial 160 min, then €0.34/min 560 min, then €0.34/min 1,000 min, then €0.34/min Negotiable Actors 3 5 7 15 Custom History 90 days 30 days 90 days 360 days Full history Comments retention 90 days 30 days 90 days 360 days Unlimited ENVIRONMENT & ACCESS Environment Browser Browser Browser Browser Browser Connection Public & private URLs Public & private URLs Public & private URLs Public & private URLs Public & private URLs, VPN/VPC Agent credentials Included Not included Included Included Included Self-hosted workers Desktop app Desktop app Desktop app Desktop app Desktop app, Docker, dedicated Integrations Linear, Slack Not included Linear, Slack API, Linear, Slack Custom Before you choose a plan Minutes, caps, trials and private URLs. What counts as a minute? Do I pay for participants or recruitment? Can I stop usage charges running away? Can I try it before I pay? Can actors test staging, previews or internal tools? Can I change or cancel my plan? Which currencies can I pay in? Do you offer startup, education or non-profit pricing? GET STARTED Your cast is ready to start Create your first actor in minutes. Run your first scene"
      },
      "stepIndex": 33
    }
  42. 2026-10-04T21:45:41.837275+00:00 · tool_call · click
    {
      "step": {
        "ts": "2026-10-04T21:45:41.615Z",
        "kind": "tool_call",
        "name": "click",
        "input": {
          "x": 0,
          "y": 0,
          "ref": "ref_13"
        }
      },
      "stepIndex": 34
    }
  43. 2026-10-04T21:45:42.202605+00:00 · tool_result · click
    {
      "step": {
        "ts": "2026-10-04T21:45:41.639Z",
        "kind": "tool_result",
        "name": "click",
        "text": "Error: ref_13 is stale or not found on the current page. Re-read the page to get fresh references."
      },
      "stepIndex": 35
    }
  44. 2026-10-04T21:45:45.518851+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:45.314Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.google.com/search?q=site%3Astuntdouble.io+SSO+Enterprise+Stunt+Double"
        }
      },
      "stepIndex": 36
    }
  45. 2026-10-04T21:45:47.790448+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:47.536Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.google.com/search?q=site%3Astuntdouble.io+SSO+Enterprise+Stunt+Double\nNow on https://www.google.com/sorry/index?continue=https://www.google.com/search%3Fq%3Dsite%253Astuntdouble.io%2BSSO%2BEnterprise%2BStunt%2BDouble%26sei%3DCcnCatfvFIKo9u8P6Pv88AE&q=EgQDKAAjGImSi9YGIjAn7T7-vtE8qmDHy3xMjpKFZq4e4UNQpFCQEo1LzUjZmwXmfGTUOvOUDtTiLcz8lFoyAVJaAUM (https://www.google.com/search?q=site%3Astuntdouble.io+SSO+Enterprise+Stunt+Double&sei=CcnCatfvFIKo9u8P6Pv88AE)"
      },
      "stepIndex": 37
    }
  46. 2026-10-04T21:45:48.649618+00:00 · screenshot
    {
      "stepIndex": 37
    }
    session step screenshot
  47. 2026-10-04T21:45:51.282187+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:51.069Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/sitemap.xml"
        }
      },
      "stepIndex": 38
    }
  48. 2026-10-04T21:45:54.076505+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:53.862Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/sitemap.xml\nNow on https://www.stuntdouble.io/sitemap.xml"
      },
      "stepIndex": 39
    }
  49. 2026-10-04T21:45:56.207154+00:00 · screenshot
    {
      "stepIndex": 39
    }
    session step screenshot
  50. 2026-10-04T21:45:57.012656+00:00 · tool_call · navigate
    {
      "step": {
        "ts": "2026-10-04T21:45:56.808Z",
        "kind": "tool_call",
        "name": "navigate",
        "input": {
          "url": "https://www.stuntdouble.io/features"
        }
      },
      "stepIndex": 40
    }
  51. 2026-10-04T21:46:02.059031+00:00 · tool_result · navigate
    {
      "step": {
        "ts": "2026-10-04T21:46:01.789Z",
        "kind": "tool_result",
        "name": "navigate",
        "text": "Navigated to https://www.stuntdouble.io/features\nNow on https://www.stuntdouble.io/features (Features | Stunt Double)"
      },
      "stepIndex": 41
    }
  52. 2026-10-04T21:46:03.877872+00:00 · screenshot
    {
      "stepIndex": 41
    }
    session step screenshot
  53. 2026-10-04T21:46:05.388494+00:00 · tool_call · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:46:05.184Z",
        "kind": "tool_call",
        "name": "get_page_text",
        "input": {}
      },
      "stepIndex": 42
    }
  54. 2026-10-04T21:46:05.752871+00:00 · tool_result · get_page_text
    {
      "step": {
        "ts": "2026-10-04T21:46:05.201Z",
        "kind": "tool_result",
        "name": "get_page_text",
        "text": "Everything your cast can do An actor is an AI user driving a real browser. Every feature below points one at your product: an interview, a checklist, a design review, a deploy. Each result arrives with the screenshots behind it. The cast Discover Validate Improve Connect Actors that use your product An actor is a persona with instructions, knowledge and its own browser. It observes the page, takes an action, checks the result and repeats until the task is done. Actors Give a persona a role, a background and the knowledge it needs, from product facts to test credentials. It works through your product the way that person would. Build an actor Real identities Every actor has its own email inbox and browser session. Sign-up codes, magic links and verification emails arrive and get used, so those flows are tested end to end. Read the concepts Locations and devices Pick a city and the actor browses through a residential proxy there, on a phone, tablet or desktop viewport. Geo-gated content and local pricing get checked from where your users are. Meet the cast Runner The assistant inside the app. Ask in plain language and it creates actors, checklists, interviews and automations, then takes you to the result. See Runner Hear it before you build it Put an idea, a prototype or a live flow in front of a panel and read what they did, where they stopped and why. Interviews Write a guide of sections and questions, cast a panel, and each actor works through your product while it answers. Participants run side by side, so a five-person round takes an afternoon. Run an interview Synthesised reports When the last session ends, the round becomes themes. Each theme cites the sessions, quotes and screenshots behind it. How a study works Interview video BETA A round also comes back as a synthesised video edit. Every theme with video evidence has a Watch button that jumps to the moment behind it. See a round Actor chat Message an actor, share a screen or float a headline, then ask a follow-up. The actor keeps the context, so the conversation stays coherent. Audition an idea Prototypes and Figma Anything with a reachable URL works: production, staging, a preview deployment, a Figma Make site or a Claude artifact. Create a project straight from a Figma file. Test a Figma prototype Check every change against your requirements Write the requirement once. An actor checks it on every deploy and shows you the screen it was looking at. Checklists Describe each check in plain language and an actor runs it in a hosted browser. Every check comes back passed or failed, with a screenshot and the reasoning. Write a checklist Checklist library and replays Start from templates for sign-up, checkout, pricing pages, forms, accessibility, mobile and search. After its first run a checklist replays the recorded path, so repeat runs are faster and land the same way. Run your first checklist Design reviews Point actors at a page or a Figma frame and each one reviews it in character. Findings come back tagged by severity and category, in the dashboard or in a Slack thread. Review from Slack Guidelines Give a project the rules it is judged by: brand, tone of voice, design system, legal copy. Import them from a web page, a published Storybook or a GitHub repository, and findings cite them. Enforce a standard Automations Chain checklists, conditions, delays, notifications, pull request reviews and GitHub comments into one run. Start it by hand, on a schedule, from a webhook, or on a GitHub, Vercel, Linear, Slack or Figma event. Build an automation Know what to fix next Findings from actors and comments from people land in one place, each with the evidence attached. Insights Observations that fall outside pass or fail: a confusing step, a broken link, a result nobody wrote a check for. A short list instead of a pile of recordings. Read a run Recordings and screenshots Every run is recorded. Step through each action with the screenshot captured at that moment, or watch the session play end to end. Read the concepts Shared reports Turn on a private link and anyone can open a read-only report, with checks, evidence and screenshots, without an account. Switch the link off at any time. Share findings Feedback widget One script tag on your site or prototype. Visitors pin a comment to the place it applies, with a screenshot, the page URL and device details attached. Install the widget Feedback triage Comments group by page and prototype version, and move through new, reviewed, resolved and dismissed. Summarise the open queue into themes and an implementation brief. Triage comments Issues and goals Failed checks, open design review notes, untriaged comments and insights land on the Issues tab, each linked to its evidence. Link insights and feedback to the goals they support. Track issues and goals Runs where your work already happens Start a run from a conversation, a pull request or a Slack thread, and send the result back to the same place. MCP server Connect Claude, Cursor or any MCP client to app.stuntdouble.io/api/mcp. Sign-in is OAuth 2.1, with separate scopes to read, write and start runs. Connect a client Claude Install the Claude Desktop extension in one click, then run checklists, workflows and interviews from a conversation. Set up Claude GitHub and Vercel Run a checklist on every preview deployment and post the outcome on the pull request, so a regression shows up before merge. Verify every change Slack and Linear Ask for a design review in a Slack thread and get run summaries where your team talks. Push findings into Linear as issues, ready to triage. See integrations Self-hosted workers Run the browser inside your own network as a Docker container or with the CLI, on Enterprise. It dials out, so there are no inbound firewall changes, and a domain allowlist sets what it can reach. Add a worker Mac app Use your own Mac as a worker, on every plan. Actors run in a browser on your machine and on your network, next to the builds you are working on. Download for macOS What it costs Plans differ by seats, actors, run minutes and history. There are no participant fees and no panel credits. How it compares Where Stunt Double goes before a panel, where it sits beside a script or a manual pass, and where it is the wrong tool. GET STARTED Your cast is ready to start Create your first actor in minutes. Run your first scene"
      },
      "stepIndex": 43
    }
  55. 2026-10-04T21:46:13.705347+00:00 · tool_call · done
    {
      "step": {
        "ts": "2026-10-04T21:46:13.463Z",
        "kind": "tool_call",
        "name": "done",
        "input": {
          "message": "1. **Product, value proposition, target persona:** The product is **Stunt Double**, an AI-powered product-testing and research platform. Its stated value proposition is: “Stunt Double sends AI users through your product to show how real people and AI agents actually experience it, so product, design and growth teams can fix what matters before they ship.” It targets **product, design and growth teams** (the site does not name a narrower primary persona).\n\n2. **Starter price, feature, trial:** The entry plan is **Solo Trial: €9/month**, for one person. A headline feature: AI actors drive a real browser through a product or prototype and return findings with screenshots/evidence. The Solo Trial covers **up to 3 months**; the site says it includes fair-use minutes. The live demo is also free and requires no sign-up, but the Solo Trial itself is listed at €9/month.\n\n3. **Enterprise access and SSO:** Enterprise is listed as **Bespoke**, with **custom seats**, “for organisations with specific needs.” The public site does **not explicitly state whether an individual user may buy/access Enterprise**, and it does **not list any Enterprise SSO options**. The exact SSO options are therefore **not stated** on the pages reviewed."
        }
      },
      "stepIndex": 44
    }