11+ Time-series & Temporal Extensions for PostgreSQL

TimescaleDB, pg_timeseries, temporal_tables, periods, and other Postgres extensions for time-series workloads. Ranked by GitHub stars.

Last reviewed: May 15, 2026
11 extensions
1
timescaledb
22.7k+232 30d

Enables scalable inserts and complex queries for time-series data

Time-series & Temporal·TSL·C
2
pg_cron
3.8k+29 30d

Job scheduler for PostgreSQL

Time-series & Temporal·PostgreSQL·C
3

Library of analytical hyperfunctions, time-series pipelining, and other SQL utilities

Time-series & Temporal·TSL·Rust
4
timeseries
418+3 30d

Convenience API for time series stack

Time-series & Temporal·PostgreSQL·SQL
5
pg_later
3730 30d

Run queries now and get results later

Time-series & Temporal·PostgreSQL·Rust
6
periods
313+2 30d

Provide Standard SQL functionality for PERIODs and SYSTEM VERSIONING

Time-series & Temporal·PostgreSQL·C
7
pg_background
248+1 30d

Run SQL queries in the background

Time-series & Temporal·GPL-3.0·C
8
emaj
900 30d

Enables fine-grained write logging and time travel on subsets of the database.

Time-series & Temporal·GPL-3.0·SQL
9

PostgreSQL table versioning extension

Time-series & Temporal·BSD-3-Clause·SQL
10
pg_task
670 30d

execute any sql command at any specific time at background

Time-series & Temporal·MIT·C
11

temporal tables

Time-series & Temporal·BSD-2-Clause·C

What is a PostgreSQL Time-Series Extension?

Time-series extensions add native support for timestamped data — automatic time-partitioning (hypertables), columnar compression for older chunks, continuous aggregates for downsampling, retention policies for automatic data deletion, and time-aware analytical functions like time_bucket and last(). TimescaleDB is the dominant choice (source-available TSL license) and powers IoT telemetry, financial time series, and observability backends. Smaller extensions like temporal_tables add SQL:2011 system-versioning for audit history, periods adds period and range support for temporal validity, and pg_cron schedules in-database jobs that often pair with time-series pipelines.

When to Add a Time-Series Extension

Add TimescaleDB when you're ingesting tens of thousands of timestamped rows per second, querying over time ranges, downsampling aggregates with continuous_aggregates, or rolling up historical data with retention_policy. For lower-volume time-tagged data (audit logs, event tracking with under 1k events/sec), plain Postgres with a btree index on the timestamp column is enough — adding TimescaleDB introduces operational complexity that isn't warranted. For multi-region or cross-cloud time-series at extreme scale, evaluate dedicated TSDBs like InfluxDB, QuestDB, or VictoriaMetrics. TimescaleDB wins on operational simplicity for teams already on Postgres and on hybrid OLTP+time-series workloads.

Frequently Asked Questions

What is TimescaleDB?
TimescaleDB is a PostgreSQL extension that turns regular tables into 'hypertables' — partitioned automatically by time, indexed for fast time-range queries, and compressed in columnar form for older data. It adds time-specific functions (time_bucket, locf, interpolate), continuous aggregates that update incrementally, and retention policies that drop old chunks on a schedule. It's licensed under TSL (source-available, not OSI-approved), maintained by Timescale Inc., and the de-facto time-series solution for Postgres users.
Is TimescaleDB open source?
TimescaleDB has two editions. The Apache 2.0 'community' edition (timescaledb) gives you hypertables, time_bucket, and basic time-series features. The TSL-licensed 'TSL' edition (timescaledb-tsl) adds the powerful features most teams want: columnar compression, continuous aggregates, retention policies, and bloom indexes. TSL is source-available but not OSI-approved — you can run it freely except as a managed cloud service for resale. For most teams, the practical answer is 'yes, free to use.'
Does TimescaleDB work on AWS RDS?
No — TimescaleDB is not available on AWS RDS or Aurora. AWS removed TimescaleDB from RDS allow-lists around 2020 due to licensing concerns (the TSL license). Available alternatives: Timescale Cloud (the vendor's own managed service), self-hosted Postgres on EC2, or Supabase (which does ship TimescaleDB on most projects). For RDS users who need time-series, alternatives include pg_partman + native partitioning, or moving to Timescale Cloud or a TSDB like Amazon Timestream.
When should I use TimescaleDB vs InfluxDB?
Use TimescaleDB when your time-series workload sits alongside relational data and you want one database — joins between time-series and metadata, SQL access, ACID transactions, and standard Postgres tooling. Use InfluxDB (or QuestDB, VictoriaMetrics) when time-series is your primary workload at massive scale (millions of points per second), you don't need joins, and you want a purpose-built TSDB query language (Flux, InfluxQL). For most application backends with telemetry as a feature, TimescaleDB wins on operational simplicity.
How do I install TimescaleDB?
Install the OS package — apt install timescaledb-2-postgresql-17 on Debian/Ubuntu or yum install timescaledb-2-postgresql-17 on RHEL/Rocky. Then add 'timescaledb' to shared_preload_libraries in postgresql.conf, restart Postgres, and run CREATE EXTENSION timescaledb; in the target database. On managed providers: Timescale Cloud has it pre-installed; Supabase enables it on most projects; AWS RDS and Aurora do not support it.

Manage PostgreSQL Visually

1bench is a modern GUI client for PostgreSQL — install extensions, write queries, and inspect schemas without leaving the IDE.

Try 1bench for PostgreSQL