{
  "id": "google-cloud-pub-sub-vs-amazon-sqs",
  "ids": [
    "google-cloud-pub-sub",
    "amazon-sqs"
  ],
  "title": "Google Cloud Pub/Sub vs Amazon SQS: queues, subscriptions and consumer recovery",
  "heading": "Google Cloud Pub/Sub vs Amazon SQS",
  "kicker": "Software architecture comparison",
  "deck": "Pub/Sub provides independent topic subscriptions, while SQS provides queues for consumers. Decide whether the application needs fan-out to independent subscribers or a queue of work before comparing delivery configuration and costs.",
  "description": "Compare Google Cloud Pub/Sub vs Amazon SQS for queues, subscriptions and consumer recovery.",
  "answerHeading": "Which option fits the requirement?",
  "answer": "Pub/Sub provides independent topic subscriptions, while SQS provides queues for consumers. Decide whether the application needs fan-out to independent subscribers or a queue of work before comparing delivery configuration and costs.",
  "checkedAt": "2026-10-25",
  "researchTag": "Deployment, compatibility and cost scope",
  "researchLimit": "Official product material reviewed. Acceptance checks are proposed exercises, not completed product trials, performance measurements or reliability guarantees.",
  "datasetDescription": "Seven technical differences and four proposed acceptance checks for Google Cloud Pub/Sub vs Amazon SQS.",
  "type": "workflow-buying",
  "sharedBuyingNeed": "Evaluate alternative approaches to queues, subscriptions and consumer recovery.",
  "rows": [
    [
      "Cloud provider",
      "Google Cloud",
      "AWS"
    ],
    [
      "Messaging abstraction",
      "Topics and subscriptions",
      "Managed message queues"
    ],
    [
      "Consumer arrangement",
      "Configured subscriptions and delivery modes",
      "Consumers of the selected queue"
    ],
    [
      "Application integration",
      "Pub/Sub APIs and client libraries",
      "SQS APIs and AWS SDKs"
    ],
    [
      "Failure configuration",
      "Acknowledgement and redelivery configuration",
      "Visibility timeout and dead-letter queue configuration"
    ],
    [
      "Design check",
      "Independent subscriptions, retention and delivery requirements",
      "Queue type, polling, ordering and retention requirements"
    ],
    [
      "Cost components",
      "Message traffic, delivery and retained-data scope",
      "Requests and configured queue features"
    ]
  ],
  "scenarios": [
    {
      "name": "Consumer model",
      "question": "Can the team deliver a representative event to the intended test consumers?",
      "left": "With Google Cloud Pub/Sub, deliver a representative event to the intended test consumers.",
      "right": "With Amazon SQS, deliver a representative event to the intended test consumers.",
      "note": "The selected architecture delivers work to the correct consumers."
    },
    {
      "name": "Consumer pause",
      "question": "Can the team pause and restore a disposable consumer?",
      "left": "With Google Cloud Pub/Sub, pause and restore a disposable consumer.",
      "right": "With Amazon SQS, pause and restore a disposable consumer.",
      "note": "Recovery meets the application's retention requirement."
    },
    {
      "name": "Duplicate message",
      "question": "Can the team replay a representative message?",
      "left": "With Google Cloud Pub/Sub, replay a representative message.",
      "right": "With Amazon SQS, replay a representative message.",
      "note": "The consumer preserves the required business outcome."
    },
    {
      "name": "Failed processing",
      "question": "Can the team exercise the configured failure or dead-letter path?",
      "left": "With Google Cloud Pub/Sub, exercise the configured failure or dead-letter path.",
      "right": "With Amazon SQS, exercise the configured failure or dead-letter path.",
      "note": "The team can identify and recover the failed message."
    }
  ],
  "exampleTable": {
    "caption": "Proposed checks using authorised non-production resources. Record the actual account, region, version, configuration and observed outcome.",
    "headers": [
      "Requirement",
      "Proposed exercise",
      "Accept when"
    ],
    "rows": [
      [
        "Consumer model",
        "Deliver a representative event to the intended test consumers.",
        "The selected architecture delivers work to the correct consumers."
      ],
      [
        "Consumer pause",
        "Pause and restore a disposable consumer.",
        "Recovery meets the application's retention requirement."
      ],
      [
        "Duplicate message",
        "Replay a representative message.",
        "The consumer preserves the required business outcome."
      ],
      [
        "Failed processing",
        "Exercise the configured failure or dead-letter path.",
        "The team can identify and recover the failed message."
      ]
    ]
  },
  "sections": [
    {
      "id": "scope-and-architecture",
      "title": "Scope and architecture",
      "paragraphs": [
        "Pub/Sub provides independent topic subscriptions, while SQS provides queues for consumers. Decide whether the application needs fan-out to independent subscribers or a queue of work before comparing delivery configuration and costs.",
        "A queue and a publish-subscribe service have overlapping messaging uses but different delivery models. Define the number of independent consumers, ordering needs, retention and failure handling before choosing a service."
      ],
      "links": [
        {
          "url": "https://docs.cloud.google.com/pubsub/docs?hl=en",
          "label": "Google Cloud Pub/Sub product information"
        },
        {
          "url": "https://aws.amazon.com/sqs/",
          "label": "Amazon SQS product information"
        }
      ],
      "navLabel": "Architecture"
    },
    {
      "id": "cost-and-migration",
      "title": "Cost and migration planning",
      "paragraphs": [
        "For Google Cloud Pub/Sub, include message traffic, delivery and retained-data scope. For Amazon SQS, include requests and configured queue features. Use the same workload and resilience assumptions, then confirm current vendor terms for the selected configuration.",
        "Test consumer pauses, duplicate messages and failed processing with the selected configuration. Application idempotency and operational recovery remain necessary even when the messaging service manages the infrastructure."
      ],
      "navLabel": "Costs & migration"
    }
  ],
  "faqs": [
    {
      "question": "How should we choose between Google Cloud Pub/Sub and Amazon SQS?",
      "answer": "Pub/Sub provides independent topic subscriptions, while SQS provides queues for consumers. Decide whether the application needs fan-out to independent subscribers or a queue of work before comparing delivery configuration and costs."
    },
    {
      "question": "Which costs belong in the comparison?",
      "answer": "For Google Cloud Pub/Sub, include message traffic, delivery and retained-data scope. For Amazon SQS, include requests and configured queue features. Use the same workload and resilience assumptions, then confirm current vendor terms for the selected configuration."
    },
    {
      "question": "What should we validate before a production move?",
      "answer": "Test consumer pauses, duplicate messages and failed processing with the selected configuration. Application idempotency and operational recovery remain necessary even when the messaging service manages the infrastructure."
    }
  ],
  "sources": [
    {
      "url": "https://docs.cloud.google.com/pubsub/docs?hl=en",
      "facts": "Official product scope, deployment and integration context used for queues, subscriptions and consumer recovery."
    },
    {
      "url": "https://aws.amazon.com/sqs/",
      "facts": "Official product scope, deployment and integration context used for queues, subscriptions and consumer recovery."
    }
  ],
  "relatedLinks": [
    {
      "path": "/categories/data-integration-engineering/",
      "title": "Data Integration Engineering software"
    },
    {
      "path": "/guides/cloud-cost-checklist/",
      "title": "Cloud workload and cost checklist"
    }
  ]
}
