# BullMQ vs Temporal

**Leader by vioscaleAI score:** Temporal

| Attribute | BullMQ | Temporal |
|---|---|---|
| **vioscaleAI score** | 57.3 (62% (medium)) | 71.5 (76% (high)) |
| activity.commits_last_30d | 100 | 100 |
| adoption.dependent_repos | 1,185 | 30 |
| adoption.github_stars | 9,503 | 23,468 |
| adoption.package_downloads_weekly | 9,701,809 | 8,455,032 |
| 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":"Temporal is a durable execution platform that automatically captures and persists application state, allowing workflows to recover from failures and resume exactly where they left off. It eliminates manual reconciliation code and enables building AI agents, orchestrations, and complex business processes across multiple programming languages. It is indexed under Message Queues.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"What is Temporal?","confidence":0.6},{"answer":"Temporal offers a free tier, so you can start without paying. Paid plans start at $100 per month. Prices are published openly on the vendor's own pricing page. Pricing changes often, so verify at source before relying on it.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"Is Temporal free?","confidence":0.6},{"answer":"Temporal supports the web and a command-line interface. Platforms we have not confirmed are simply not listed here rather than ruled out.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"What platforms does Temporal support?","confidence":0.6},{"answer":"Yes. Temporal can be deployed cloud / SaaS and self-hosted, so it does not have to run on the vendor's infrastructure.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"Can Temporal be self-hosted?","confidence":0.6},{"answer":"We have confirmed 5 integrations for Temporal, including Google ADK, OpenAI Agents SDK, AWS Lambda, AWS RDS and GCP Cloud SQL. This is what we could verify from public sources, so the vendor may support others we have not indexed.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"What does Temporal integrate with?","confidence":0.6},{"answer":"We have independently confirmed SOC 2, HIPAA and GDPR for Temporal. Certifications we do not list are ones we have not been able to verify from public sources, which is not the same as Temporal not holding them. Always confirm compliance directly before you rely on it.","source":"https://temporal.io/security","question":"What security certifications does Temporal have?","confidence":0.7},{"answer":"Yes. Temporal 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/temporalio/temporal","question":"Is Temporal open source?","confidence":0.99},{"answer":"Temporal is available worldwide. Its primary market is the United States.","source":"https://temporal.io/blog/temporal-cloud-pricing-update","question":"Where is Temporal available?","confidence":0.75}]` |
| deployment.options | `{"cloud":true,"hybrid":true,"self_hosted":true}` | `{"cloud":true,"hybrid":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 durable execution platform that simplifies building resilient distributed systems by automatically managing workflow state, retries, and recovery. It eliminates the need for custom failure handling, reconciliation logic, and infrastructure like message queues or schedulers. |
| features.capabilities | `{"hosting":"self","paradigm":"job_queue","persistent_log":true,"managed_offering":false,"dead_letter_queue":true,"horizontal_scaling":true}` | `{"hosting":"both","paradigm":"durable_exec","protocol":"gRPC","message_replay":true,"persistent_log":true,"geo_replication":true,"managed_offering":true,"delivery_guarantee":"at_least_once","horizontal_scaling":true}` |
| integrations.count | - | 3 |
| integrations.list | - | `[{"name":"Google ADK"},{"name":"OpenAI Agents SDK"},{"name":"AWS Lambda","native":true,"category":"compute"},{"name":"AWS RDS","native":true,"category":"database"},{"name":"GCP Cloud SQL","native":true,"category":"database"},{"name":"Vercel's AI SDK","native":true,"category":"ai"},{"name":"Google Agent Development Kit (ADK)","native":true,"category":"ai"}]` |
| language.primary | TypeScript | Go |
| license.spdx | MIT | MIT |
| market.availability | `{"primaryMarkets":["US"],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` | `{"primaryMarkets":["US"],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` |
| platform.support | - | `{"cli":true,"web":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":"usage","plans":[{"free":false,"name":"Paygo with Developer Support","summary":"$0/mo minimum, $0.000025 per action","components":[{"per":{"qty":1,"unit":"action"},"kind":"metered","amount":0.000025,"currency":"USD"}],"description":"Pay-as-you-go consumption-based pricing with developer support included","contactSales":false}],"summary":"From $0.000025 per action with $0/mo minimum. Free trial available.","currency":"USD","freeTier":true,"sourceUrl":"https://temporal.io/blog/introducing-pay-as-you-go-pricing-for-temporal-cloud-on-the-aws-marketplace","retrievedAt":"2026-10-05T10:05:08.415Z","freeTrialDays":90,"startingPrice":{"unit":"action","amount":0.000025,"currency":"USD"},"billingPeriods":["month"]}` |
| pricing.free_tier | yes | yes |
| pricing.model | freemium | freemium |
| pricing.price_level | high | low |
| pricing.starting_price | `{"amount":139,"currency":"USD"}` | `{"amount":0.000025,"currency":"USD"}` |
| pricing.transparent | no | yes |
| release.cadence_days | - | 3 |
| 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/temporalio/temporal/releases/tag/v1.30.7","date":"2026-09-18T00:08:08Z","type":"stable","version":"v1.30.7"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.31.3","date":"2026-09-18T20:31:24Z","type":"stable","version":"v1.31.3"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.32.0","date":"2026-09-11T16:10:29Z","type":"stable","version":"v1.32.0"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.31.2","date":"2026-07-08T17:10:11Z","type":"stable","version":"v1.31.2"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.6","date":"2026-07-08T17:10:18Z","type":"stable","version":"v1.30.6"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.5","date":"2026-06-15T20:06:55Z","type":"stable","version":"v1.30.5"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.29.7","date":"2026-06-12T16:51:23Z","type":"stable","version":"v1.29.7"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.31.1","date":"2026-06-10T16:46:24Z","type":"stable","version":"v1.31.1"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.4.1","date":"2026-05-01T22:37:04Z","type":"stable","version":"v1.30.4.1"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.31.0","date":"2026-04-29T21:09:18Z","type":"stable","version":"v1.31.0"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.29.6.1","date":"2026-05-06T20:41:23Z","type":"stable","version":"v1.29.6.1"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.4","date":"2026-04-10T21:06:39Z","type":"stable","version":"v1.30.4"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.29.6","date":"2026-04-10T21:07:12Z","type":"stable","version":"v1.29.6"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.28.4","date":"2026-04-10T21:07:31Z","type":"stable","version":"v1.28.4"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.3","date":"2026-04-01T17:55:04Z","type":"stable","version":"v1.30.3"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.29.5","date":"2026-04-01T17:55:00Z","type":"stable","version":"v1.29.5"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.28.3.1","date":"2026-03-26T20:05:30Z","type":"stable","version":"v1.28.3.1"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.29.4.1","date":"2026-03-25T17:07:30Z","type":"stable","version":"v1.29.4.1"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.30.2","date":"2026-03-24T22:40:36Z","type":"stable","version":"v1.30.2"},{"url":"https://github.com/temporalio/temporal/releases/tag/v1.28.3","date":"2026-03-18T17:30:05Z","type":"stable","version":"v1.28.3"}]` |
| reliability.sla_pct | - | 99.9 |
| reliability.status_page | yes | yes |
| security.certifications | `[{"name":"SOC 2 Type II","level":"Type II","status":"active"}]` | - |
| security.disclosure_policy | - | yes |
| security.gdpr | yes | yes |
| security.hipaa | - | yes |
| security.scorecard | 6.8 | 5.7 |
| security.soc2 | yes | yes |
| security.trust_center | - | https://temporal.io/blog/trusting-ai-agents-a-reinsurance-case-study |
| 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":6,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=go&package_name=go.temporal.io%2Fserver&per_page=100","last_12m":4,"max_severity":"MODERATE"}` |

## Capabilities (Message Queues)

| Capability | BullMQ | Temporal |
|---|:--:|:--:|
| **Core** |  |  |
| Messaging paradigm | Job / task queue | Durable execution |
| **Correctness** |  |  |
| Delivery guarantee | - | At-least-once |
| Ordering guarantee | - | - |
| **Durability** |  |  |
| Durable replayable log | ✓ | ✓ |
| Message replay / rewind | - | ✓ |
| **Interop** |  |  |
| Wire protocol | - | gRPC |
| 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 | Cloud + self-hosted |
| **Processing** |  |  |
| Built-in stream processing | - | - |

*Source: vioscaleAI. Generated 2026-10-16T20:56:23.124Z. "-" = undocumented, not absent.*
