# Black vs Qlty

**Leader by Vioscale score:** Black

| Attribute | Black | Qlty |
|---|---|---|
| **Vioscale score** | 72.7 (78% (high)) | 51.5 (54% (medium)) |
| activity.commits_last_30d | 29 | 9 |
| adoption.dependent_repos | 105,588 | 0 |
| adoption.github_stars | 41,816 | 3,130 |
| adoption.package_downloads_weekly | 39,005,228 | - |
| deployment.options | `{"self_hosted":true}` | `{"cloud":true}` |
| description.long | An opinionated Python code formatter that automatically reformats code according to a standardized style. It produces minimal diffs for cleaner code review and reduces developer cognitive load by removing formatting decisions, allowing focus on code logic. | A code quality platform that automatically analyzes pull requests for linting, formatting, security issues, and code coverage with AI-generated fixes. Supports 40+ languages and integrates with GitHub, IDEs, and CI systems. |
| features.capabilities | `{"autofix":true,"metrics":false,"function":"formatter","ci_gating":true,"deployment":"both","incremental":false,"open_source":"oss","config_model":"zero_config","custom_rules":false,"impl_language":"Python","pricing_model":"free","language_scope":"single_language","editor_integration":true}` | `{"autofix":true,"metrics":true,"function":"quality_platform","ci_gating":true,"deployment":"both","incremental":true,"open_source":"open_core","config_model":"config_file","custom_rules":true,"impl_language":"Rust","pricing_model":"per_contributor","language_scope":"multi_language","editor_integration":true}` |
| integrations.count | 8 | 6 |
| integrations.list | `[{"name":"Neovim"},{"name":"conform.nvim"},{"name":"ALE"},{"name":"SublimeText"},{"name":"Pre-commit"},{"name":"Jupyter Notebooks"},{"name":"blacken-docs"},{"name":"blackdoc"}]` | `[{"name":"GitHub"},{"name":"Visual Studio Code"},{"name":"GitHub Actions"},{"name":"CircleCI"},{"name":"Chrome"},{"name":"Firefox"}]` |
| language.primary | Python | Rust |
| license.spdx | MIT | - |
| market.availability | - | `{"primaryMarkets":["US"],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | `{"cli":true}` | `{"cli":true,"mac":true,"web":true,"linux":true,"windows":true}` |
| pricing | `{"type":"open_source","summary":"Free and open source (MIT licensed)","freeTier":true,"sourceUrl":"https://black.readthedocs.io/en/stable/","retrievedAt":"2026-08-14T13:47:36.307Z"}` | `{"type":"subscription","plans":[{"free":true,"name":"Free","summary":"Free, forever","features":["Unlimited public and private repositories","Unlimited contributors","1,000 analysis minutes per month","100 AI autofixes per month","Linting and auto-formatting","Code coverage","Duplication and complexity detection","Security scanning (SAST, SCA)","Secrets scanning","Infrastructure as Code (IaC) security","GitHub single sign-on","SOC 2 Type II certified","Community support"],"description":"Linting and auto-formatting for individual developers and small teams","contactSales":false,"includedLimits":{"ai_autofixes":"100/mo","analysis_minutes":"1,000/mo"}},{"free":false,"name":"Pro","summary":"$20/contributor/month. Annual billing includes 2 months free.","features":["Everything in Free, plus:","Shared configurations","Trends and hotspots","1 year of history","Accelerated analysis","Custom checks","REST API","Monorepo support","20,000 analysis minutes per month","5,000 AI autofixes per month","Email support"],"components":[{"kind":"per_unit","unit":"contributor","amount":20,"period":"month","currency":"USD"}],"description":"Advanced analytics and organizational features for teams","contactSales":false,"includedLimits":{"ai_autofixes":"5,000/mo","analysis_minutes":"20,000/mo"}},{"free":false,"name":"Enterprise","summary":"$30/contributor/month. Volume discounts: 5% at 100+ seats, 10% at 200+ seats.","features":["Everything in Pro, plus:","Advanced analytics","Organization policies","Custom permissions","Audit logs","Slack support","Priority support with SLA","Named account manager","Consolidated billing","Uptime SLA","Custom terms","75,000 analysis minutes per month","Invoiced billing (annual $10k+)","Additional analysis minutes at $0.01 per minute"],"components":[{"kind":"per_unit","unit":"contributor","amount":30,"period":"month","currency":"USD"}],"description":"Advanced capabilities for large organizations with custom support","contactSales":true,"includedLimits":{"ai_autofixes":"5,000/mo","analysis_minutes":"75,000/mo"}}],"addOns":[{"name":"Additional analysis minutes","components":[{"per":{"qty":1,"unit":"analysis_minute"},"kind":"metered","amount":0.01,"currency":"USD"}]}],"summary":"Free plan available. Pro from $20/contributor/month. Enterprise from $30/contributor/month. Annual plans include 2 months free.","currency":"USD","freeTier":true,"sourceUrl":"https://qlty.sh/pricing","retrievedAt":"2026-08-14T09:18:32.988Z","startingPrice":{"amount":20,"period":"month","currency":"USD"},"billingPeriods":["month","year"]}` |
| pricing.free_tier | yes | yes |
| pricing.model | open_source | freemium |
| pricing.price_level | free | mid |
| pricing.transparent | yes | yes |
| release.cadence_days | 31 | 4 |
| release.history | `[{"url":"https://github.com/psf/black/releases/tag/26.5.1","date":"2026-05-18T16:52:38Z","type":"stable","version":"26.5.1"},{"url":"https://github.com/psf/black/releases/tag/26.5.0","date":"2026-05-16T17:56:23Z","type":"stable","version":"26.5.0"},{"url":"https://github.com/psf/black/releases/tag/26.3.1","date":"2026-03-12T03:35:15Z","type":"stable","version":"26.3.1"},{"url":"https://github.com/psf/black/releases/tag/26.3.0","date":"2026-03-06T17:41:48Z","type":"stable","version":"26.3.0"},{"url":"https://github.com/psf/black/releases/tag/26.1.0","date":"2026-01-18T04:49:25Z","type":"stable","version":"26.1.0"},{"url":"https://github.com/psf/black/releases/tag/26.1a1","date":"2025-12-08T01:46:21Z","type":"prerelease","version":"26.1a1"},{"url":"https://github.com/psf/black/releases/tag/25.12.0","date":"2025-12-08T01:40:32Z","type":"stable","version":"25.12.0"},{"url":"https://github.com/psf/black/releases/tag/25.11.0","date":"2025-11-10T01:53:31Z","type":"stable","version":"25.11.0"},{"url":"https://github.com/psf/black/releases/tag/25.9.0","date":"2025-09-19T00:27:15Z","type":"stable","version":"25.9.0"},{"url":"https://github.com/psf/black/releases/tag/25.1.0","date":"2025-01-29T04:15:11Z","type":"stable","version":"25.1.0"},{"url":"https://github.com/psf/black/releases/tag/24.10.0","date":"2024-10-07T19:20:06Z","type":"stable","version":"24.10.0"},{"url":"https://github.com/psf/black/releases/tag/24.8.0","date":"2024-08-02T17:42:53Z","type":"stable","version":"24.8.0"},{"url":"https://github.com/psf/black/releases/tag/24.4.2","date":"2024-04-26T00:31:27Z","type":"stable","version":"24.4.2"},{"url":"https://github.com/psf/black/releases/tag/24.4.1","date":"2024-04-24T15:17:30Z","type":"stable","version":"24.4.1"},{"url":"https://github.com/psf/black/releases/tag/24.4.0","date":"2024-04-12T20:13:48Z","type":"stable","version":"24.4.0"},{"url":"https://github.com/psf/black/releases/tag/24.3.0","date":"2024-03-15T19:35:14Z","type":"stable","version":"24.3.0"},{"url":"https://github.com/psf/black/releases/tag/24.2.0","date":"2024-02-12T20:20:40Z","type":"stable","version":"24.2.0"},{"url":"https://github.com/psf/black/releases/tag/24.1.1","date":"2024-01-28T05:28:09Z","type":"stable","version":"24.1.1"},{"url":"https://github.com/psf/black/releases/tag/24.1.0","date":"2024-01-26T05:11:50Z","type":"stable","version":"24.1.0"},{"url":"https://github.com/psf/black/releases/tag/23.12.1","date":"2023-12-22T23:05:40Z","type":"stable","version":"23.12.1"}]` | `[{"url":"https://github.com/qltysh/qlty/releases/tag/v0.643.0","date":"2026-08-22T00:41:59Z","type":"stable","version":"v0.643.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.642.0","date":"2026-08-14T21:22:17Z","type":"stable","version":"v0.642.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.641.0","date":"2026-08-03T21:23:53Z","type":"stable","version":"v0.641.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.640.0","date":"2026-07-28T18:38:45Z","type":"stable","version":"v0.640.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.639.0","date":"2026-07-23T21:03:00Z","type":"stable","version":"v0.639.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.638.0","date":"2026-07-22T18:48:37Z","type":"stable","version":"v0.638.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.637.0","date":"2026-07-21T22:17:30Z","type":"stable","version":"v0.637.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.636.0","date":"2026-07-20T15:35:09Z","type":"stable","version":"v0.636.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.635.0","date":"2026-07-17T15:50:51Z","type":"stable","version":"v0.635.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.634.0","date":"2026-07-15T19:45:17Z","type":"stable","version":"v0.634.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.633.0","date":"2026-07-08T22:02:21Z","type":"stable","version":"v0.633.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.632.1","date":"2026-07-08T08:03:57Z","type":"stable","version":"v0.632.1"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.632.0","date":"2026-07-01T19:29:17Z","type":"stable","version":"v0.632.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.631.0","date":"2026-06-23T22:58:37Z","type":"stable","version":"v0.631.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.630.0","date":"2026-05-08T23:36:57Z","type":"stable","version":"v0.630.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.629.0","date":"2026-05-07T18:24:59Z","type":"stable","version":"v0.629.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.628.0","date":"2026-05-06T21:15:56Z","type":"stable","version":"v0.628.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.627.0","date":"2026-05-05T18:59:31Z","type":"stable","version":"v0.627.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.626.0","date":"2026-05-01T15:18:22Z","type":"stable","version":"v0.626.0"},{"url":"https://github.com/qltysh/qlty/releases/tag/v0.625.0","date":"2026-04-24T00:16:18Z","type":"stable","version":"v0.625.0"}]` |
| reliability.status_page | - | yes |
| security.disclosure_policy | yes | - |
| security.scorecard | 7.7 | - |
| security.soc2 | - | yes |
| security.vulnerabilities | `{"count":2,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=black&per_page=100","last_12m":1,"max_severity":"HIGH"}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=cargo&package_name=qlty-cloud&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Code Quality Tools)

| Capability | Black | Qlty |
|---|:--:|:--:|
| **Core** |  |  |
| Function | Formatter | Quality platform |
| Language scope | Single-language | Multi-language |
| Implementation language | Python | Rust |
| **Capability** |  |  |
| Autofix | ✓ | ✓ |
| **Config** |  |  |
| Config model | Zero-config | Config file |
| **Extensibility** |  |  |
| Custom rules | ✗ | ✓ |
| **Deployment** |  |  |
| Deployment | Both | Both |
| **Delivery** |  |  |
| Editor integration | ✓ | ✓ |
| CI / VCS gating | ✓ | ✓ |
| **Insight** |  |  |
| Code metrics | ✗ | ✓ |
| **Performance** |  |  |
| Incremental / monorepo aware | ✗ | ✓ |
| **Licensing** |  |  |
| Open-source | OSS | Open-core |
| **Commercial** |  |  |
| Pricing model | Free | Per-contributor |

*Source: Vioscale. Generated 2026-09-01T16:32:32.306Z. "-" = undocumented, not absent.*
