How do I get the the total number of Impressions and Plays for Media from the Matomo database?
We can get the total number of « Impressions » and « Plays » for both audio and video by querying the log_media
table in the Matomo database.
Video
To get the total number of « Impressions » for video media, we can use the following SQL query:
SELECT * FROM matomo_log_media WHERE idsite LIKE 'X' AND media_type LIKE '1';
As we can see from the query above, video media is stored as media_type
« 1 » in the Matomo database. For video media, a « Play » is stored in the database in the watched_time
column as a value above 1, any value above 1 means that the video was played at least in part.
To get the total number of « Plays » for video media we can use the following SQL query:
SELECT * FROM matomo_log_media WHERE idsite LIKE 'X' AND media_type LIKE '1' AND watched_time > '1';
Audio
Media type « Audio » is stored as media_type
« 2 » in the log_media
table, so for example we can retrieve all of the « Audio Impressions » with the following query:
SELECT * FROM matomo_log_media WHERE idsite LIKE 'X' AND media_type LIKE '2';
For Audio media stored in the log_media
table, a « Play » is counted when the watched_time column value is greater than 1. (Any row with media_type
2 and watched_time
of 1 or 0 indicates that it was not played)
So for example, we can retrieve all of the « Audio Plays » with the following query:
SELECT * FROM matomo_log_media WHERE idsite LIKE 'X' AND media_type LIKE '2' AND watched_time > '1';
If you would like to query other types of RAW tracking data from the Matomo database, you can see our FAQ here: How do I write SQL queries to select visitors, list of pageviews, searches, events in the Matomo database