# BullMQ vs NSQ

**Leader by vioscaleAI score:** BullMQ

| Attribute | BullMQ | NSQ |
|---|---|---|
| **vioscaleAI score** | 57.3 (62% (medium)) | 37.5 (37% (low)) |
| activity.commits_last_30d | 100 | 0 |
| adoption.dependent_repos | 1,185 | 39 |
| adoption.github_stars | 9,503 | 25,772 |
| adoption.package_downloads_weekly | 9,701,809 | - |
| content.faq | `[{"answer":"An open source system for queueing and processing background tasks using Redis as the data store, with support for Node.js, Python, Rust, Elixir, and PHP applications. It is indexed under Message Queues.","source":"https://bullmq.io/","question":"What is BullMQ?","confidence":0.6},{"answer":"BullMQ is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://bullmq.io/","question":"Is BullMQ free to use?","confidence":0.6},{"answer":"Yes. BullMQ can be deployed self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://bullmq.io/","question":"Can BullMQ be self-hosted?","confidence":0.6},{"answer":"We have independently confirmed SOC 2 for BullMQ. Certifications we do not list are ones we have not been able to verify from public sources, which is not the same as BullMQ not holding them. Always confirm compliance directly before you rely on it.","source":"https://bullmq.io/","question":"What security certifications does BullMQ have?","confidence":0.48},{"answer":"Yes. BullMQ is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/taskforcesh/bullmq","question":"Is BullMQ open source?","confidence":0.99}]` | `[{"answer":"Distributed message queue system designed for high-throughput, real-time message delivery across fault-tolerant clusters without centralized brokers. Supports both load-balanced queuing and publish-subscribe messaging patterns with minimal operational overhead and configuration complexity. It is indexed under Message Queues.","source":"https://nsq.io/","question":"What is NSQ?","confidence":0.6},{"answer":"NSQ is open source, so it can be self-hosted and used at no licence cost. It is released under the MIT licence. Pricing changes often, so verify at source before relying on it.","source":"https://nsq.io/","question":"Is NSQ free to use?","confidence":0.6},{"answer":"NSQ supports the web, Windows, macOS, Linux and a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://nsq.io/","question":"What platforms does NSQ support?","confidence":0.6},{"answer":"Yes. NSQ can be deployed on-premise and self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://nsq.io/","question":"Can NSQ be self-hosted?","confidence":0.6},{"answer":"Yes. NSQ is published under the MIT licence, a permissive licence that generally allows commercial use and modification. Licence terms can change between releases, so verify against the repository for the version you intend to use.","source":"https://github.com/nsqio/nsq","question":"Is NSQ open source?","confidence":0.95}]` |
| deployment.options | `{"cloud":true,"hybrid":true,"self_hosted":true}` | `{"self_hosted":true}` |
| description.long | BullMQ is a background job and message queue system supporting Node.js, Python, .NET, Rust, Elixir, and other languages. It scales horizontally across unlimited workers, includes automatic job retry with backoff, dead-letter queues, and real-time monitoring. | A platform for distributing messages across interconnected systems with built-in redundancy and automatic failover to prevent single-component failures and maintain continuous operation. |
| features.capabilities | `{"hosting":"self","paradigm":"job_queue","persistent_log":true,"managed_offering":false,"dead_letter_queue":true,"horizontal_scaling":true}` | `{"hosting":"self","ordering":"none","paradigm":"queue","protocol":"TCP","persistent_log":true,"consumer_groups":true,"geo_replication":false,"kafka_compatible":false,"managed_offering":false,"delivery_guarantee":"at_least_once","horizontal_scaling":true}` |
| integrations.count | - | 1 |
| integrations.list | - | `[{"name":"statsd"}]` |
| language.primary | TypeScript | Go |
| license.spdx | MIT | MIT |
| market.availability | `{"primaryMarkets":["US"],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` | - |
| platform.support | - | `{"mac":true,"linux":true,"windows":true}` |
| pricing | `{"type":"subscription","plans":[{"free":false,"name":"Professional","summary":"$139/month","commitment":"monthly","components":[{"kind":"fixed","amount":139,"period":"month","currency":"USD"}],"contactSales":false}],"summary":"Free tier available; Professional tier from $139/month","currency":"USD","freeTier":true,"sourceUrl":"https://bullmq.io/","retrievedAt":"2026-10-13T11:15:28.907Z","startingPrice":{"amount":139,"period":"month","currency":"USD"},"billingPeriods":["month"]}` | `{"type":"open_source","sourceUrl":"https://nsq.io/","retrievedAt":"2026-09-10T16:02:27.919Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | freemium | open_source |
| pricing.price_level | high | free |
| pricing.starting_price | `{"amount":139,"currency":"USD"}` | - |
| pricing.transparent | no | yes |
| release.cadence_days | - | 84 |
| release.history | `[{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.14","date":"2026-10-13T08:07:53Z","type":"stable","version":"v6.3.14"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.13","date":"2026-10-12T08:51:22Z","type":"stable","version":"v6.3.13"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vphp2.0.3","date":"2026-10-12T06:19:55Z","type":"stable","version":"vphp2.0.3"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.3.3","date":"2026-10-10T05:40:10Z","type":"stable","version":"vpy3.3.3"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.12","date":"2026-10-09T08:04:29Z","type":"stable","version":"v6.3.12"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.5","date":"2026-10-08T04:06:11Z","type":"stable","version":"vrs1.3.5"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.3.2","date":"2026-10-08T21:07:47Z","type":"stable","version":"vpy3.3.2"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vex2.3.0","date":"2026-10-08T21:39:22Z","type":"stable","version":"vex2.3.0"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.3.1","date":"2026-10-07T22:07:37Z","type":"stable","version":"vpy3.3.1"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.4","date":"2026-10-04T20:57:14Z","type":"stable","version":"vrs1.3.4"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.11","date":"2026-10-01T01:54:00Z","type":"stable","version":"v6.3.11"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.3.0","date":"2026-09-30T05:45:35Z","type":"stable","version":"vpy3.3.0"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.10","date":"2026-09-29T10:30:07Z","type":"stable","version":"v6.3.10"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.2.8","date":"2026-09-29T02:53:36Z","type":"stable","version":"vpy3.2.8"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.3","date":"2026-09-26T05:25:38Z","type":"stable","version":"vrs1.3.3"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/v6.3.9","date":"2026-09-25T18:57:39Z","type":"stable","version":"v6.3.9"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.2","date":"2026-09-25T03:25:22Z","type":"stable","version":"vrs1.3.2"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vpy3.2.7","date":"2026-09-25T04:06:50Z","type":"stable","version":"vpy3.2.7"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.1","date":"2026-09-24T04:20:30Z","type":"stable","version":"vrs1.3.1"},{"url":"https://github.com/taskforcesh/bullmq/releases/tag/vrs1.3.0","date":"2026-09-22T07:54:20Z","type":"stable","version":"vrs1.3.0"}]` | `[{"url":"https://github.com/nsqio/nsq/releases/tag/v1.3.0","date":"2023-12-27T05:04:56Z","type":"stable","version":"v1.3.0"},{"url":"https://github.com/nsqio/nsq/releases/tag/v1.2.1","date":"2021-08-16T01:28:41Z","type":"stable","version":"v1.2.1"},{"url":"https://github.com/nsqio/nsq/releases/tag/v1.2.0","date":"2019-08-28T15:42:22Z","type":"stable","version":"v1.2.0"},{"url":"https://github.com/nsqio/nsq/releases/tag/v1.1.0","date":"2018-08-19T23:53:01Z","type":"stable","version":"v1.1.0"},{"url":"https://github.com/nsqio/nsq/releases/tag/v1.1.0-rc1","date":"2018-07-31T15:11:14Z","type":"prerelease","version":"v1.1.0-rc1"},{"url":"https://github.com/nsqio/nsq/releases/tag/v1.0.0-compat","date":"2017-03-22T19:58:21Z","type":"stable","version":"v1.0.0-compat"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.8","date":"2016-05-26T16:57:39Z","type":"stable","version":"v0.3.8"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.7","date":"2016-02-24T06:22:01Z","type":"stable","version":"v0.3.7"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.6","date":"2015-09-25T14:28:15Z","type":"stable","version":"v0.3.6"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.5","date":"2015-04-26T22:40:31Z","type":"stable","version":"v0.3.5"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.4","date":"2015-04-26T21:58:36Z","type":"stable","version":"v0.3.4"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.3","date":"2015-04-26T21:20:42Z","type":"stable","version":"v0.3.3"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.2","date":"2015-02-08T18:08:30Z","type":"stable","version":"v0.3.2"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.1","date":"2015-01-22T06:12:20Z","type":"stable","version":"v0.3.1"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.3.0","date":"2014-11-18T15:14:35Z","type":"stable","version":"v0.3.0"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.2.31","date":"2014-08-26T14:51:27Z","type":"stable","version":"v0.2.31"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.2.30","date":"2014-07-29T04:05:10Z","type":"stable","version":"v0.2.30"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.2.29","date":"2014-07-25T12:39:19Z","type":"stable","version":"v0.2.29"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.2.28","date":"2014-04-29T03:25:31Z","type":"stable","version":"v0.2.28"},{"url":"https://github.com/nsqio/nsq/releases/tag/v0.2.27","date":"2014-02-17T14:24:17Z","type":"stable","version":"v0.2.27"}]` |
| reliability.status_page | yes | yes |
| security.certifications | `[{"name":"SOC 2 Type II","level":"Type II","status":"active"}]` | - |
| security.gdpr | yes | - |
| security.scorecard | 6.8 | 3.5 |
| security.soc2 | yes | - |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=bullmq&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=go&package_name=github.com%2Fnsqio%2Fnsq&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Message Queues)

| Capability | BullMQ | NSQ |
|---|:--:|:--:|
| **Core** |  |  |
| Messaging paradigm | Job / task queue | Queue |
| **Correctness** |  |  |
| Delivery guarantee | - | At-least-once |
| Ordering guarantee | - | None |
| **Durability** |  |  |
| Durable replayable log | ✓ | ✓ |
| Message replay / rewind | - | - |
| **Interop** |  |  |
| Wire protocol | - | TCP |
| Kafka-protocol compatible | - | ✗ |
| **Scale** |  |  |
| Partitioned horizontal scaling | ✓ | ✓ |
| Geo / cross-region replication | - | ✗ |
| **Consumption** |  |  |
| Consumer groups / competing consumers | - | ✓ |
| Dead-letter queue | ✓ | - |
| **Deployment** |  |  |
| Managed cloud offering exists | ✗ | ✗ |
| Hosting | Self-hosted only | Self-hosted only |
| **Processing** |  |  |
| Built-in stream processing | - | - |

*Source: vioscaleAI. Generated 2026-10-15T22:03:53.763Z. "-" = undocumented, not absent.*
