You can use spatialite.
Make sure you are using a projected coordinate system, if not reproject or the distances will be measured in degrees.
Export the point layer to a spatialite database by right-click - Export - Save features as.
Connect to the database in DB Manager:
Execute this query in the SQL Window, after you have changed tracking
to the name of your layer and 3006
to the srid you are using:
with cte as (
select tag_id, datum,
lag(datum,1,0) over(partition by tag_id order by datum) previous_date,
st_distance(lag(geometry,1,0) over(partition by tag_id order by datum), geometry) distance_traveled,
SetSRID(makeline(lag(geometry,1,0) over(partition by tag_id order by datum), geometry), 3006) as geometry
from tracking)
select row_number() over() as id, *, distance_traveled/((julianday(datum)-julianday(previous_date))*86400) as speed_mps
from cte
where distance_traveled is not null
LAG, julianday