Starter
Try AI PR review.
- 2 reviewers
- Code Review
- Security Review
- 3 seats included
- 15,000 credits to start, then 5,000/mo
- Unlimited repos
Qodo reviews pull requests with several specialized agents that read the whole repository, and posts findings ranked by severity.[1] It bills by usage, not seats: credits cost $0.012 each, pooled across the workspace, and the smallest pack, $30 a month, covers about 18 reviews.[2]
On the same 50 open-source pull requests, Qodo found 98 of 158 known issues (F1 58.5%), the best of every app and model we ran; IonWarp's Code Review found 77 (49.2%),[3] but caught a Grafana device limit that Qodo missed.[4]
# .pr_agent.toml
[github_app]
pr_commands = ["/agentic_review", "/agentic_describe"]Install from the Qodo portal's wizard rather than GitHub Marketplace, so every feature is on. It also connects GitLab, Bitbucket, Azure DevOps and Gerrit.[5][6]
It reviews a pull request when it opens, reopens or is marked ready, and on every push if you turn that on. Comment /agentic_review to run one by hand.[7]
PR-Agent, the open-source reviewer Qodo started, is community-maintained under the MIT license and runs on your own model key. Qodo Merge, its hosted version, became today's Qodo.[8]
| Criterion | ||
|---|---|---|
| Cost | $49/mo for 5 developers — one Pro workspace with 5 seats included. | A credit pool shared by the team, $0.012 a credit.[2] |
| Git platforms | GitHub, and GitHub Enterprise on the Enterprise plan. | GitHub, GitLab, Bitbucket, Azure DevOps and Gerrit.[6] |
| Separate reviewers | Yes:16 reviewers, such as Security Review, SOC 2 Review and Docs Review. The planner adds the ones each diff needs. | Specialized agents inside one review.[1] |
Competitor facts are from each vendor's own pricing page and docs, dated in the sources below. IonWarp's column is read from its own pricing and reviewer catalog.
Real IonWarp comments on open-source pull requests, graded against the benchmark's answer key.
Missed byQodo 18
2 of 18 · See the benchmark
HighKnown issue in the Code Review benchmark · caught by Muse Spark 1.3See the graded case
Non-atomic retryCount increment loses retries on concurrent runs - update writes reminder.retryCount+1 from stale read; overlapping cron runs both write same value so delete threshold is delayed - should use atomic increment: data:{retryCount:{increment:1}} in both failure and catch updates · Code Review
HighKnown issue in the Code Review benchmark · caught by Muse Spark 1.3See the graded case
Muse Spark 1.3 is its best model on this benchmark; Code Review runs DeepSeek V4.1 Flash unless you pick another.
Missed byQodo 3
1 of 3 · See the benchmark
P1Local cache is set before CreateOrUpdateDevice, so a limit-rejected device is silently whitelisted for 29 minutes · Security Review
When the device limit is reached, tagDeviceUI caches the device key before CreateOrUpdateDevice returns ErrDeviceLimitReached; the failed request errors for the anonymous user (client.go:46), but the next request from the same device hits the cache, returns nil, and proceeds untagged — one failed load then a limit bypass per node per 29min.
HighKnown issue in the Security Review benchmark · caught by GLM 5.3 FlashSee the graded case
GLM 5.3 Flash is its best model on this benchmark; Security Review runs DeepSeek V4.1 Flash unless you pick another.
Missed byQodo 3
1 of 3 · See the benchmark
P2Unused private getEvaluationContext copy left in ClientPermissionsV2 · AI Architecture Review
getEvaluationContext builds a DefaultEvaluationContext with the kc.client.id attribute, a hand-rolled copy of the block inside V1 ClientPermissions.canExchangeTo. In V2 canExchangeTo throws UnsupportedOperationException, so nothing reads this helper: a grep for getEvaluationContext across services/src/main/java/org/keycloak/services/resources/admin/permissions returns only the declaration itself. Dead copy-paste scaffolding in a newly added class.
LowKnown issue in the AI Architecture Review benchmark · caught by DeepSeek V4.1 FlashSee the graded case
One workspace price with seats included. Credits pool across your team. Unlimited repos on every plan.
Try AI PR review.
Get AI PR review right from day 1.
Scale AI PR review.
Custom reviewers + credits · GitHub Enterprise · SSO/SAML + audit logs · Custom security review + SLA
Qodo bills by usage, not seats: credits cost $0.012 each, pooled across the workspace, and packs start at $30 a month for 2,500 credits, about 18 reviews (Qodo, Oct 2026). Usage past the pack is billed at the same rate up to a monthly cap you set, and unused credits expire at the end of each month.
No. Every workspace starts with a 14-day trial with unlimited reviews and no card, then needs a paid plan. Public open-source projects on GitHub with 200 or more stars can apply for a free plan, without Rules and PR history.
It had the top F1 on our code review set (58.5%, 98 of 158 known issues), our security set (73.3%, on a provisional answer key) and our logging set (72.7%). CodeRabbit found 94 code issues but 194 of its findings matched none (42.2%), and it led AI architecture, where Qodo found 1 of 6 known issues. Qodo's docs score, 26.7%, was the lowest of the four apps.
PR-Agent is the open-source pull request reviewer Qodo started, now maintained by its community under the MIT license, and it is not Qodo's free tier. Qodo Merge was its hosted, paid version, and it became today's Qodo: a multi-agent review with rules, PR history and cross-repository review.
Qodo runs one multi-agent review and bills by credits. IonWarp runs Code Review on every pull request, adds reviewers for security, performance, docs and architecture when the diff needs them, and prices per workspace. Its default model found fewer known issues than Qodo on our code set (F1 49.2% to 58.5%).
When limit is reached, first tag sets cache before DB fails so retry hits cache and authenticates with no device write, defeating the limit - cache should only be set after CreateOrUpdateDevice succeeds and cache key should be deleted when ErrDeviceLimitReached is returned · Code Review