Home > Destinations > PostgreSQL > Matomo

Connect Matomo to PostgreSQL

Connect Matomo to PostgreSQL and export selected accounts, metrics, and dimensions to your PostgreSQL project.

Configure the historical window, destination table, and recurring schedule without maintaining a Matomo API pipeline.

Used by the world's leading companies

Export Matomo data to PostgreSQL

Catchr handles extraction, normalization, and loading automatically.

Centralize

Centralize Matomo data in PostgreSQL

Bring all your Matomo data into your warehouse and make it available for analytics, machine learning, and internal applications.

Data freshness

Keep your PostgreSQL tables up to date

Automatically sync new data from Matomo so every dashboard, model, and report works with fresh information.

Analysis

Unify Matomo with the rest of your business data

Join marketing, finance, CRM, and product data inside the same warehouse.

Matomo metrics and dimensions available in PostgreSQL

Access 102 metrics and 79 dimensions from Matomo connectors including Users, New Users, Returning Users, Conversion Rate, Conversions, Revenue, Bounce Rate, Avg. time on page, Date, Campaign Name, Campaign Source, Campaign Medium, Source - Medium, Channel Type, Page URL, Country and many more...

102

Metrics availables

79

Dimensions availables

Connect Matomo to PostgreSQL in minutes

Move your data from Matomo to PostgreSQL with a simple setup. Once connected, Catchr handles the ingestion automatically so your warehouse stays up to date without manual work.

Step one

Connect your Matomo account

Authenticate your Matomo account securely in Catchr. No custom scripts, API maintenance, or engineering work required.

Client A · Connected sources
5 sources ready
Matomo 3 advertising accounts Connected
Google Ads 2 advertising accounts Connected
Google Analytics 4 1 web property Connected
HubSpot 1 CRM portal Connected
Step two

Choose the PostgreSQL destination

Add the database host and credentials once. Catchr checks the connection so your exports start with a reachable destination.

Destination / PostgreSQL Required fields
Host Required
warehouse.company.net
Username Required
catchr_writer
Password Required
••••••••••••
Database Required
marketing
Step three

Keep your PostgreSQL tables updated

Choose the fields, initial history, partition field, and recurring schedule for the job. Catchr refreshes the configured import window in your PostgreSQL table.

Export job / PostgreSQL Example
Schema Destination
marketing_raw
Table Per job
linkedin_ads_daily
Recurring schedule Choose a cadence
Every 6 hours
Daily · 07:00
Weekly · Mon
First sync scheduledSelected fields · configured history
07:00 UTC

Review 30-day Matomo traffic and conversion performance in SQL.

This example summarizes users, sessions, conversions, and conversion rate by traffic source.

Matomo.sql
BigQuery SQL
30-day window
SELECT
  traffic_source,
  SUM(active_users) AS active_users,
  SUM(sessions) AS sessions,
  SUM(conversions) AS conversions,
  SAFE_DIVIDE(
    SUM(conversions),
    SUM(sessions)
  ) AS conversion_rate
FROM `your_project.marketing_raw.matomo_events_daily`
WHERE date >= DATE_SUB(
  CURRENT_DATE(),
  INTERVAL 30 DAY
)
GROUP BY traffic_source
ORDER BY sessions DESC;
Illustrative SQL — adapt it to the fields and schema selected in your export. Standard SQL

Choose what to load into PostgreSQL.

Each connector has its own entities, fields, historical limits, and reporting uses. Open a source page for the details that belong to that platform.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Before you schedule the job.

Answers about PostgreSQL setup, available source data, schedules, table updates, and SQL use cases.

How do I route Matomo data into PostgreSQL tables?

Connect Matomo and add PostgreSQL as the stored destination. Create a datastream, then save a job that sends the required records to the "sessions" table.

Which Matomo fields can I store in PostgreSQL?

Select concrete Matomo fields such as Distinct campaigns, Distinct keywords, Distinct search engines, and Date. You can rename the chosen columns, preview the result, and write them to PostgreSQL tables such as properties, sessions, and users.

Can I backfill Matomo data before scheduling PostgreSQL updates?

Choose how far back the first Matomo load should go and how much recent data each "sessions" run should refresh. Catchr splits large backfills into smaller intervals.

What happens if no partition field is chosen for Matomo?

For recurring Matomo loads, assign an eligible partition field to "sessions". Otherwise Catchr cannot match the refresh window and will append the returned records.

How does Matomo data in PostgreSQL support deeper analysis?

With Matomo data, a PostgreSQL query can summarize users, sessions, conversions, and conversion rate by traffic source. Join Distinct campaigns and Distinct keywords with shared account or date keys to build a reusable performance model in PostgreSQL.

Does my PostgreSQL database need to exist before I connect it?

Yes. Connect an existing PostgreSQL database first. The Catchr job creates and populates the destination table you configure inside that database.

Can I load several marketing sources into the same Postgres database?

Yes. Create a separate datastream and job for each source, write each export to its own table, then combine the data downstream with SQL, views, or your BI tool.

Still have a question ? 

Our teams is always here to responds to any question you could have about our data connector. 

Your next database import should not start with five exports.

Connect your marketing platforms and build a data workflow your entire agency can use.

14 days free-trial
No credit-card required
100+ sources