PgCache is a smart read replica for PostgreSQL that caches the hot data driving most of your traffic. Stop paying to replicate cold data. Try it for free on a small workload, then scale as you grow. Change one connection string. Never serves stale data.
If you're using traditional read replicas to scale PostgreSQL, you may be paying to duplicate far more data than your workload actually needs. That means more always-on compute, more storage, more transfer cost, and more operational overhead. PgCache takes a simpler approach.
The Pareto Advantage
PgCache acts as a demand-driven proxy in front of PostgreSQL. It automatically caches the queries and data that are used most often, so you can get the benefits of a read replica without duplicating your full database footprint. The result is faster reads and lower infrastructure waste.
Drop-In Deployment
PgCache is a wire-compatible PostgreSQL proxy. Just update your connection string. No application code changes, no Redis layer, and no separate cache invalidation logic. Uncacheable queries pass through transparently to your origin database.
Always Fresh
PgCache uses PostgreSQL logical replication to keep cached data synchronized with the source database. Writes continue to go directly to your origin database, while reads are served from cache when possible. That means you can reduce stale-cache risk without adding complexity to your application.
Works With Your Existing Stack
PgCache works with PostgreSQL 16, 17, and 18, and supports any ORM or driver that speaks the PostgreSQL wire protocol. It handles parameterized queries, JOINs, aggregations, GROUP BY, DISTINCT, and window functions. If your app runs on Postgres, PgCache can fit into your existing stack.
Pricing That Scales With You
Start with a free small instance or 30-day free trial to test PgCache on a real workload before committing. After that, PgCache bills hourly per instance, the same way your read replica does. Run it 24/7 and it is a flat, forecastable line item: about $156 a month all-in for the recommended m6g.large. You are metered on instance hours, not queries, so the bill does not move when your traffic does.
Cache the 20%, Offload the 80%: Automatically identifies and caches hot query data using demand-driven logic. Stop brute-force scaling and paying to replicate 100% of your cold data.
Always Fresh, Never Stale: PostgreSQL Logical Replication (CDC) keeps cached data perfectly in sync in real time. No TTL guesses, no stale reads, no cache invalidation logic in your application.
Test for free on a small workload, then pay by the instance hour. No per-query charges and no surprise bills, because your traffic volume is not a billing dimension. Running at scale? Contact us for a private offer at aws-team@pgcache.com
AWS Marketplace now accepts line of credit payments through the PNC Vendor Finance program. This program is available to select AWS customers in the US, excluding NV, NC, ND, TN, & VT.
Try this product free for 30 days according to the free trial terms set by the vendor. Usage-based pricing is in effect for usage beyond the free trial terms. Your free trial gets automatically converted to a paid subscription when the trial ends, but may be canceled any time before that.
You pay by the hour based on the EC2 instance size you run PgCache on. Six instance options are available: t4g.small, m6g.medium, m6g.large, m6g.xlarge, m6g.2xlarge, and m6g.4xlarge. These are not feature tiers. They differ only in compute capacity, so pricing scales up as you pick a larger instance to match your workload. You choose the size that fits your read traffic. Billing is usage-based and hourly, with no per-query charges and no monthly software fee. Run it continuously for a predictable, forecastable cost.
Top-of-mind questions for buyers
What does the hourly instance charge actually pay for, and what runs on it?
You pay for one running instance that acts as a caching proxy between your application and your PostgreSQL database. Each instance size maps to a set amount of compute. The proxy caches the hot data your traffic touches, so a larger instance handles more read traffic and cached working set.
Am I charged when the instance is stopped, and are there extra per-query fees?
Billing meters running instance-hours, so a stopped instance stops accruing software charges. There are no per-query charges and no monthly software fee. Underlying AWS storage may still bill separately while an instance is stopped. Run it continuously for a flat, forecastable line item.
How do I pick an instance size, and what happens if my read traffic grows?
Choose the instance size that matches your read workload; the six options differ only in compute capacity, not features. If traffic grows, you switch to a larger instance and your hourly rate follows that size. The change is manual — you select the new size when you deploy.
Tell us how we can improve this page, or report an issue with this product.
Give us feedbackReport a problem with this product or seller
Legal
Vendor terms and conditions
Upon subscribing to this product, you must acknowledge and agree to the terms and conditions outlined in the vendor's End User License Agreement (EULA).
Content disclaimer
Vendors are responsible for their product descriptions and other product content. AWS does not warrant that vendors' product descriptions or other product content are accurate, complete, reliable, current, or error-free.
An AMI is a virtual image that provides the information required to launch an instance. Amazon EC2 (Elastic Compute Cloud) instances are virtual servers on which you can run your applications and workloads, offering varying combinations of CPU, memory, storage, and networking resources. You can launch as many instances from as many different AMIs as you need.
Version release notes
0.9.0
Access Control
Privileges checked on every cache hit: a cached result is served only to a role origin would let run the read. Verdicts are read from origin once per role and object and dropped on DDL or a role catalog change; a role without a positive verdict has its read forwarded.
Row-level security enforced: a table with RLS enabled is cached by inlining the policies that apply to the reading role. A policy that cannot be inlined forwards to origin, and PgCache's role must be a superuser or have BYPASSRLS to populate secured tables.
Role catalog poll: role membership, SUPERUSER, INHERIT and a role recreated under the same name fire no event trigger, so PgCache polls the origin's role catalog (every 5s by default) and forgets every privilege verdict on a change.
Consistency
Anti-joins over rows other queries loaded: a LEFT JOIN ... WHERE x IS NULL, NOT EXISTS or NOT IN now loads every matching row of its NULL-filled side for every preserved row its other conditions admit.
Row-level read-after-write for joins: a join read is checked against a pending write per table reference, on that reference's own filters, so a pending INSERT outside a joined table's filter no longer forwards the read. A joined table without a filter, or on the NULL-filled side of an outer join, still forwards on any pending write to it.
Pending writes matched by schema: the table a pending write names is resolved the way origin resolves it, by its schema qualifier or along the connection's search_path, before reads are checked against it. When the name could resolve to more than one cached table, reads of each forward.
Subsumption
Readmission by subsumption: an invalidated query whose tables are covered by cached queries that are still current is stamped from their rows on readmission instead of repopulated from origin.
Waiting on a populating parent: a query covered by a cached query still being populated waits and is stamped from that parent's rows once they land, so a burst of narrower variants behind a broad query costs one origin population. Its reads forward until then; if the parent is invalidated, evicted or fails first, it populates itself.
Additional details
Usage instructions
PgCache AMI Usage
PgCache is a transparent caching proxy for PostgreSQL. This AMI includes PgCache and an embedded PostgreSQL 18 cache database, managed as systemd services. On first boot, a bootstrap script fetches your database credentials from AWS SSM Parameter Store and starts the proxy.
Prerequisites
Origin PostgreSQL database with wal_level = logical enabled
Database user with REPLICATION role attribute or superuser
IAM role attached to the instance with ssm:GetParameter permission
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.
An AI-powered PostgreSQL monitoring and management platform that combines real-time metrics, proactive anomaly detection, and an agentic AI assistant to help teams diagnose and resolve issues faster.
pgEdge Cloud is fully managed, 100% open source PostgreSQL built for Agentic AI and high availability in regulated enterprises. Deploy in minutes from an intuitive console that provisions directly in your AWS account - full control, no lock-in. Start with a single node, add read replicas, or scale to multi-master clusters across regions with no re-platforming. pgEdge Cloud is AI-ready out of the box, with pgvector for vector storage and semantic search, and full compatibility with the pgEdge Agentic AI Toolkit including MCP Server, RAG Server, and hybrid search. The database platform where Agentic AI applications go to production. Meet data residency and compliance requirements in regulated industries like government, healthcare, and financial services. Deploy databases across regions to support data sovereignty and global operations. Includes backup/restore for distributed environments and 24/7 enterprise support.
TurboGate Advanced for Aurora MySQL is a complete automatic setup of your middletier proxy layer. It helps your business to use databases in a reliable and performant fassion. It also helps to set up your SQL read-write splitting proxy layer with 1-click deployment.
TurboGate with MySQL is a complete automatic setup of your database and middletier proxy layer. It helps your business to use databases in a reliable and performant fassion. It also helps to set up your database environment in a fully automatic fassion with 1-click deployment.
Be the first to review this product. We've partnered with PeerSpot to gather customer feedback. You can share your experience by writing or recording a review, or scheduling a call with a PeerSpot analyst.