Skip to content

How Jules’s scores are calculated

The full audit trail, recomputed from the verdict data at build time through the same code that produced the leaderboard: verdict × quality × story weight per cell, cells sum to dimension scores, dimensions blend into the PA Score. Every number on the product page is reproducible from this page alone; for why the formula looks like this, see the methodology.

verdict factors: full ×1.0 · partial ×0.6 · disputed ×0.3 · none ×0.0 · n/a excluded from both sides · cell points = weight × quality × factor · cell max = weight × 10

PA Score23/100

Agent-ready 28.9 × 0.30 = 8.67

API quality 4.3 × 0.20 = 0.86

Openness 6.0 × 0.20 = 1.20

Built-in AI 60.4 × 0.15 = 9.06

Automation 18.8 × 0.15 = 2.82

(8.67 + 0.86 + 1.20 + 9.06 + 2.82) ÷ (0.30 + 0.20 + 0.20 + 0.15 + 0.15) = 22.61 ÷ 1.00 = 22.6

Scores are stored to 1 decimal; the product page’s pills round to whole numbers for display. Each dimension below shows the stories, verdicts, and cited evidence behind its number.

Agent-ready28.9/100×0.30 of the PA blend

Outside-in: can YOUR agent reach and drive this product — API, MCP, CLI, headless runs, agent docs.

Point an agent at llms.txt or agent-oriented docsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [probe] https://jules.google/llms.txtPROBE llms.txt: HTTP 404 at https://jules.google/llms.txt
  • [probe] https://jules.google/docs.mdPROBE docs-md: HTTP 404 at https://jules.google/docs.md
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Run the product headlessly / in CI for automationweight 2

2 (weight) × 7 (quality) × 1.0 (full) = 14.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.

Plug MCP servers into this product so it can use their toolsweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.

Connect an agent via an official MCP serverweight 3

n/a — not applicable to this product: excluded from numerator and denominator

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.

Use an official CLIweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.

Drive the product through a documented public APIweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Issue scoped/least-privilege API credentials for an agentweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.

Build against official SDKsweight 2

2 (weight) × 7 (quality) × 1.0 (full) = 14.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Subscribe to events via webhooksweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [claimed-docs] https://jules.google/docsYou’ll be notified when the task completes or needs your input.

Agent-ready = 52.0 ÷ 180 × 100 = 28.9

API quality4.3/100×0.20 of the PA blend

The programmable surface once an agent is there — machine-readable spec, interactive docs, sandbox, versioning discipline.

Explore an interactive API reference with runnable examplesweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Download a machine-readable API spec (OpenAPI or equivalent)weight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [probe] https://jules.google/llms.txtPROBE llms.txt: HTTP 404 at https://jules.google/llms.txt
  • [probe] https://jules.google/docs.mdPROBE docs-md: HTTP 404 at https://jules.google/docs.md
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Test against a sandbox environment without touching production dataweight 1

1 (weight) × 5 (quality) × 0.6 (partial) = 3.0 of 10 max

  • [claimed-docs] https://jules.google/docsJules runs in a virtual machine where it clones your code, installs dependencies, and modifies files.
  • [claimed-docs] https://jules.google/docsOnce you submit a task, Jules will generate a plan. You can review and approve it before any code changes are made.
  • [claimed-docs] https://jules.googleJules provides a diff of the changes. Quickly browse and approve code edits.
  • [claimed-docs] https://jules.googleJules creates a PR of the changes. Approve the PR, merge it to your branch, and publish it on GitHub.

Rely on versioned APIs with a documented deprecation policyweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [probe] https://jules.google/llms.txtPROBE llms.txt: HTTP 404 at https://jules.google/llms.txt
  • [probe] https://jules.google/docs.mdPROBE docs-md: HTTP 404 at https://jules.google/docs.md
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

API quality = 3.0 ÷ 70 × 100 = 4.3

Openness6.0/100×0.20 of the PA blend

Can you leave, inspect, or self-host — data export, open source, portability.

Do everything through the API that I can do in the UIweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Export all of my data in open formats and leaveweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Read the product's source under an open licenseweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://jules.google/docsJules needs access to your repositories in order to work.
  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [probe] https://jules.google/llms.txtPROBE llms.txt: HTTP 404 at https://jules.google/llms.txt
  • [probe] https://jules.google/docs.mdPROBE docs-md: HTTP 404 at https://jules.google/docs.md
  • [probe] https://jules.google/openapi.jsonPROBE openapi: all candidate paths 404 (https://jules.google/openapi.json, https://jules.google/swagger.json, https://jules.google/api/openapi.json, https://jules.google/.well-known/openapi.json)

Self-host the core productweight 3

3 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 30 max

  • [claimed-docs] https://jules.google/docsJules runs in a virtual machine where it clones your code, installs dependencies, and modifies files.
  • [community] https://news.ycombinator.com/item?id=44034918Jules runs in cloud-based VMs instead of on my local machine, making it much less useful than Claude Code. My projects have bespoke build scripts specific to my machine and environment.
  • [community] https://news.ycombinator.com/item?id=45466588It's a shame Google picked the wrong system design for Jules. Claude Code's system design is clearly superior at this point.

Openness = 6.0 ÷ 100 × 100 = 6.0

Built-in AI60.4/100×0.15 of the PA blend

Inside-out: how agentic the product itself is for its users — built-in assistants, autonomous features.

Get AI-generated insights and suggestions from my data inside the productweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [claimed-docs] https://jules.google/docsOnce you submit a task, Jules will generate a plan. You can review and approve it before any code changes are made.
  • [claimed-docs] https://jules.googleJules provides a diff of the changes. Quickly browse and approve code edits.
  • [claimed-docs] https://jules.googleJules creates a PR of the changes. Approve the PR, merge it to your branch, and publish it on GitHub.
  • [community] https://news.ycombinator.com/item?id=44813854its way better than the github thing in my experience it produces usable PRs
  • [community] https://news.ycombinator.com/item?id=44813854I've tried using Jules for a side project, and the code quality it emits is much worse than GH Copilot, Gemini CLI, and Claude Code. It also had a tendency to get confused in a monorepo.

Set up automations that run autonomously in the backgroundweight 2

2 (weight) × 6 (quality) × 0.6 (partial) = 7.2 of 20 max

  • [claimed-docs] https://jules.googleUse the "jules" label in an issue to assign a task directly in GitHub.
  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://jules.google/docsOnce you submit a task, Jules will generate a plan. You can review and approve it before any code changes are made.
  • [community] https://news.ycombinator.com/item?id=45466588I've moved infrastructure to Railway and taught the customer to use Jules. They make their own PRs now, Railway spins up an environment with the changes. It works like 75% of the time. Huge time saver.
  • [community] https://news.ycombinator.com/item?id=44034918Jules was unable to complete the task in time. Please review the work done so far and provide feedback for Jules to continue.
  • [community] https://news.ycombinator.com/item?id=44813854Jules quickly after a few messages/prompts just gets stuck in an endless loop like Gemini-cli does. The worst part is that there is no 'STOP' button to quickly get it out of the loop.

Delegate tasks to a built-in AI assistant inside the productweight 3

3 (weight) × 8 (quality) × 1.0 (full) = 24.0 of 30 max

  • [claimed-docs] https://jules.googleUse the "jules" label in an issue to assign a task directly in GitHub.
  • [claimed-docs] https://jules.google/docsJules runs in a virtual machine where it clones your code, installs dependencies, and modifies files.
  • [claimed-docs] https://jules.google/docsOnce you submit a task, Jules will generate a plan. You can review and approve it before any code changes are made.
  • [claimed-docs] https://jules.googleJules provides a diff of the changes. Quickly browse and approve code edits.
  • [claimed-docs] https://jules.googleJules creates a PR of the changes. Approve the PR, merge it to your branch, and publish it on GitHub.
  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [community] https://news.ycombinator.com/item?id=44034918I used Jules three times today, very impressive! It also handles coding-adjacent work. Good github integrations.
  • [community] https://news.ycombinator.com/item?id=44813854I've used this tool for a few months now and have been pretty impressed by it. It handles large quantities of tasks very well and is good at making tests for very specific/isolated functions.
  • [community] https://news.ycombinator.com/item?id=44813854I gave Jules a try on a new, very unorganized Python project. It failed the first time, I gave it the error message and it fixed it. I was shocked it ran after that. Not bad for the free plan.
  • [community] https://news.ycombinator.com/item?id=45466588I've moved infrastructure to Railway and taught the customer to use Jules. They make their own PRs now, Railway spins up an environment with the changes. It works like 75% of the time. Huge time saver.
  • [community] https://news.ycombinator.com/item?id=44813854Jules quickly after a few messages/prompts just gets stuck in an endless loop like Gemini-cli does. The worst part is that there is no 'STOP' button to quickly get it out of the loop.
  • [community] https://news.ycombinator.com/item?id=45466588Do people really find Jules useful? I find it needs babysitting much more than Cursor.

Operate the product with natural-language commandsweight 2

2 (weight) × 8 (quality) × 1.0 (full) = 16.0 of 20 max

  • [claimed-docs] https://jules.google/docsOnce you submit a task, Jules will generate a plan. You can review and approve it before any code changes are made.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [community] https://news.ycombinator.com/item?id=44034918I used Jules three times today, very impressive! It also handles coding-adjacent work. Good github integrations.
  • [community] https://news.ycombinator.com/item?id=44813854I gave Jules a try on a new, very unorganized Python project. It failed the first time, I gave it the error message and it fixed it. I was shocked it ran after that. Not bad for the free plan.
  • [community] https://news.ycombinator.com/item?id=45466588I've moved infrastructure to Railway and taught the customer to use Jules. They make their own PRs now, Railway spins up an environment with the changes. It works like 75% of the time. Huge time saver.

Built-in AI = 54.4 ÷ 90 × 100 = 60.4

Automation18.8/100×0.15 of the PA blend

Depth of automation primitives — rules, scheduling, bulk operations, webhooks.

Perform bulk operations across many items at onceweight 2

2 (weight) × 5 (quality) × 0.6 (partial) = 6.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:
  • [claimed-docs] https://jules.google/docs/usage-limitsPower users & agent-heavy workflows ... 300 ... 60
  • [community] https://news.ycombinator.com/item?id=44813854I've used this tool for a few months now and have been pretty impressed by it. It handles large quantities of tasks very well and is good at making tests for very specific/isolated functions.
  • [community] https://news.ycombinator.com/item?id=45466588Was able to build a personal MCP server that connects to the Jules API, letting me dispatch tasks to Jules, from Copilot Chat in VS Code.

Define rules that trigger actions automatically on eventsweight 3

3 (weight) × 5 (quality) × 0.6 (partial) = 9.0 of 30 max

  • [claimed-docs] https://jules.googleUse the "jules" label in an issue to assign a task directly in GitHub.
  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.

Schedule recurring jobs or workflowsweight 2

2 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 20 max

  • [claimed-docs] https://developers.google.com/jules/apiYou can use the API to create custom workflows, automate tasks like bug fixing and code reviews, and embed Jules's intelligence directly into the tools you use every day
  • [claimed-docs] https://developers.google.com/jules/apiIn the Jules web app, go to the Settings page to create a new API key. You can have at most 3 API keys at a time.
  • [claimed-docs] https://developers.google.com/jules/apiThe `automationMode` field is optional. By default, no PR will be automatically created.
  • [claimed-docs] https://developers.google.com/jules/apiTo send a message to the agent:

Version, review, and roll back my automationsweight 1

1 (weight) × 0 (quality) × 0.0 (none) = 0.0 of 10 max

no evidence cited — the verdict rests on absence of evidence, re-checked on refresh

Automation = 15.0 ÷ 80 × 100 = 18.8