Skip to content

Telemetry and version checking

Learn what telemetry TimescaleDB collects and how to disable it

TimescaleDB collects anonymous usage data to help us better understand and assist our users. It also helps us provide some services, such as automated version checking. In particular, the UUID (user ID) fields contain no identifying information, but are randomly generated by appropriately seeded random number generators.

This is an example of the JSON data file that is sent for a specific deployment:

Example JSON telemetry data file
{
"access_methods": {
"btree": {
"instances": 214,
"pages": 566
},
"heap": {
"instances": 142,
"pages": 620
}
},
"build_architecture": "x86_64",
"build_architecture_bit_size": 64,
"build_os_name": "Linux",
"build_os_version": "6.8.0-45-generic",
"data_volume": 381903727,
"db_metadata": {},
"db_telemetry_events": [],
"db_uuid": "860c2be4-59a3-43b5-b895-5d9e0dd44551",
"errors_by_sqlerrcode": {},
"exported_db_uuid": "5730161f-0d18-42fb-a800-45df33494c21",
"functions_used": {
"pg_catalog.count()": 1689,
"pg_catalog.count(pg_catalog.\"any\")": 1600,
"pg_catalog.current_database()": 2489,
"pg_catalog.now()": 6,
"pg_catalog.version()": 6852
},
"install_method": "docker",
"installed_time": "2026-05-20T12:12:28+00",
"license": {
"edition": "community"
},
"num_compression_policies": 1,
"num_compression_policies_fixed": 0,
"num_continuous_aggs_policies": 24,
"num_continuous_aggs_policies_fixed": 0,
"num_reorder_policies": 0,
"num_reorder_policies_fixed": 0,
"num_retention_policies": 0,
"num_retention_policies_fixed": 0,
"num_user_defined_actions": 1,
"num_user_defined_actions_fixed": 0,
"os_name": "Linux",
"os_name_pretty": "Ubuntu 22.04.5 LTS",
"os_release": "6.8.0-45-generic",
"os_version": "#45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024",
"postgresql_version": "18.4",
"related_extensions": {
"ai": false,
"pg_prometheus": false,
"postgis": false,
"promscale": false,
"timescale_analytics": false,
"timescaledb_toolkit": true,
"vector": false,
"vectorscale": false
},
"relations": {
"continuous_aggregates": {
"compression": {
"compressed_heap_size": 0,
"compressed_indexes_size": 0,
"compressed_row_count": 0,
"compressed_row_count_frozen_immediately": 0,
"compressed_toast_size": 0,
"num_compressed_caggs": 0,
"num_compressed_chunks": 0,
"uncompressed_heap_size": 0,
"uncompressed_indexes_size": 0,
"uncompressed_row_count": 0,
"uncompressed_toast_size": 0
},
"heap_size": 122404864,
"indexes_size": 165044224,
"num_caggs_finalized": 24,
"num_caggs_nested": 0,
"num_caggs_using_real_time_aggregation": 24,
"num_children": 760,
"num_relations": 24,
"num_reltuples": 914704,
"toast_size": 6225920
},
"hypertables": {
"compression": {
"compressed_heap_size": 3522560,
"compressed_indexes_size": 11993088,
"compressed_row_count": 4392,
"compressed_row_count_frozen_immediately": 0,
"compressed_toast_size": 20365312,
"num_compressed_chunks": 366,
"num_compressed_hypertables": 1,
"uncompressed_heap_size": 41951232,
"uncompressed_indexes_size": 42696704,
"uncompressed_row_count": 421368,
"uncompressed_toast_size": 2998272
},
"heap_size": 3522560,
"indexes_size": 18022400,
"num_children": 366,
"num_relations": 2,
"num_reltuples": 421368,
"toast_size": 23379968
},
"materialized_views": {
"heap_size": 0,
"indexes_size": 0,
"num_relations": 0,
"num_reltuples": 0,
"toast_size": 0
},
"partitioned_tables": {
"heap_size": 0,
"indexes_size": 0,
"num_children": 0,
"num_relations": 0,
"num_reltuples": 0,
"toast_size": 0
},
"tables": {
"heap_size": 32768,
"indexes_size": 98304,
"num_relations": 4,
"num_reltuples": 12,
"toast_size": 16384
},
"views": {
"num_relations": 5
}
},
"replication": {
"is_wal_receiver": false,
"num_wal_senders": 0
},
"stats_by_job_type": {
"policy_job_stat_history_retention": {
"max_consecutive_crashes": 0,
"max_consecutive_failures": 0,
"total_crashes": 0,
"total_duration": "00:00:00.517221",
"total_duration_failures": "00:00:00",
"total_failures": 0,
"total_runs": 49,
"total_successes": 49
},
"policy_telemetry": {
"max_consecutive_crashes": 0,
"max_consecutive_failures": 0,
"total_crashes": 0,
"total_duration": "00:00:01.280382",
"total_duration_failures": "00:00:00",
"total_failures": 0,
"total_runs": 23,
"total_successes": 23
}
},
"telemetry_version": 2,
"timescaledb_version": "2.30.0"
}

If you want to see the exact JSON data file that is sent, use the get_telemetry_report API call.

Your use of either TimescaleDB Apache 2 Edition or TimescaleDB Community Edition is governed by our Privacy Policy.

Change what is included in the telemetry report

Section titled “Change what is included in the telemetry report”

If you want to adjust which metadata is included or excluded from the telemetry report, you can do so in the _timescaledb_catalog.metadata table. Metadata which has include_in_telemetry set to true, and a value of timescaledb_telemetry.cloud, is included in the telemetry report.

Telemetry reports are sent periodically in the background. In response to the telemetry report, the database receives the most recent version of TimescaleDB available for installation. This version is recorded in your server logs, along with any applicable out-of-date version warnings. You do not have to update immediately to the newest release, but we highly recommend that you do so, to take advantage of performance improvements and bug fixes.

It is highly recommended that you leave telemetry enabled, as it provides useful features for you, and helps to keep improving Timescale. However, you can turn off telemetry if you need to for a specific database, or for an entire instance.

Note

If you turn off telemetry, the version checking feature is also turned off.

  1. Open your PostgreSQL configuration file

    Locate the timescaledb.telemetry_level parameter, or add it: a fresh install does not set it, and the default is basic. See the PostgreSQL configuration file instructions for locating and opening the file.

  2. Change the parameter setting to off
    timescaledb.telemetry_level=off
  3. Reload the configuration file

    Connect with psql as a superuser and run:

    SELECT pg_reload_conf();

    You can also run pg_ctl reload from a shell. On Debian and Ubuntu package installs, pg_ctl is not on the path; use pg_ctlcluster <VERSION> main reload instead.

    Alternatively, instead of editing the file, run this at the psql prompt as a superuser, then reload as above:

    ALTER SYSTEM SET timescaledb.telemetry_level = off;

    This disables telemetry for the whole instance. To change it for one database only, run ALTER DATABASE <DATABASE_NAME> SET timescaledb.telemetry_level = off; instead.

  1. Open your PostgreSQL configuration file

    Locate the timescaledb.telemetry_level parameter. See the PostgreSQL configuration file instructions for locating and opening the file.

  2. Change the parameter setting to basic
    timescaledb.telemetry_level=basic
  3. Reload the configuration file

    Connect with psql as a superuser and run:

    SELECT pg_reload_conf();

    You can also run pg_ctl reload from a shell. On Debian and Ubuntu package installs, pg_ctl is not on the path; use pg_ctlcluster <VERSION> main reload instead.

    Alternatively, instead of editing the file, run this at the psql prompt as a superuser, then reload as above:

    ALTER SYSTEM SET timescaledb.telemetry_level = basic;

    This enables telemetry for the whole instance. To change it for one database only, run ALTER DATABASE <DATABASE_NAME> SET timescaledb.telemetry_level = basic; instead.