Parse.ly's Data Pipeline starts with a standard set of metrics and events that are worth instrumenting about many kinds of content and audience.
Parse.ly's tracking integration supports a number of standard event types out of the box, which help for measuring standard websites that include text and video content.
The type of an event is determined by the value of the
action field in
heartbeat events to start out. This table lists Parse.ly's
standard events and what they mean.
|heartbeat||Indicates page activity; auto-fires every few seconds.|
|videostart||Video asset has started playing.|
|vheartbeat||Video watching activity; auto-fires every few seconds.|
|custom||Aside from the above reserved names, any name may be used for custom events.|
A metric is nothing more than a count, unique count, or sum of a specific or filtered events.
The metrics below are each described in terms of a SQL query one might write to calculate the metric from a table containing all the raw data.
SELECT COUNT(action) as views FROM parsely.rawdata WHERE action = 'pageview';
SELECT COUNT(DISTINCT visitor_site_id) as visitors FROM parsely.rawdata;
SELECT COUNT(DISTINCT session) as sessions FROM ( SELECT CONCAT(visitor_site_id, '_', session_id) as session FROM parsely.rawdata );
SELECT SUM(engaged_time_inc) as time_in_seconds FROM parsely.rawdata WHERE action = 'heartbeat';
SELECT COUNT(action) as videostarts FROM parsely.rawdata WHERE action = 'videostart';
#Unique Video Viewers
SELECT COUNT(DISTINCT parsely_visitor_id) as viewers FROM parsely.rawdata WHERE action = 'videostart';
#Video Watch Time
SELECT SUM(engaged_time_inc) as time_in_seconds FROM parsely.rawdata WHERE action = 'vheartbeat';
SELECT action, COUNT(action) as num_actions WHERE action != 'pageview' FROM parsely.rawdata GROUP BY 1 ORDER BY 2 DESC;
This query will count all the event types other than
pageview and sort by the
ones with the highest frequency.
Channels, found in the
channel fields in the Data Pipeline, are places where
user interactions happen. Parse.ly defined channels include:
fbia(Facebook Instant Article)
apln-rta(Apple News Teal Time)
amp(Accelerated Mobile Pages)
native-ios(iOS app traffic)
native-android(Android app traffic)
To filter specific channels, use the following queries:
Include only Apple news real-time data:
SELECT <fields> FROM parsely_rawdata WHERE channel = 'apln-rta';
Exclude mobile app traffic:
SELECT <fields> FROM parsely_rawdata WHERE channel not in ('native-ios','native-android');
Note, Apple News real time events include extra data from Apple News. See How to query Data Pipeline for Apple News Real-time data for more details on the extra data available!
#Mobile Distributed Content
Parse.ly has support for Facebook Instant Articles (IA) and Google Accelerated Mobile Pages (AMP), as described elsewhere in the integration docs. Raw events complying with the above event types come through as normal on these channels. AMP traffic is distinguished by a special query parameter whereas IA traffic is distinguished with a special referring URL.
#Native Mobile Apps
Parse.ly has mobile SDKs for iOS and Android. At the present time, these SDKs
only support the
pageview event, which are expected to be registered against
"URLs" in the app that correspond to pages on your site with web parity. Support
for custom events in our mobile SDKs is coming soon.
#Off-Site Social Interactions
Parse.ly's dashboard measures a number of off-site interactions, including organic social sharing on Facebook, Twitter, LinkedIn, and Pinterest. These social interactions are not yet available in the Data Pipeline, but are coming soon.
When suspicious traffic is suspected, the following process will produce a report that allows insight into who is accessing your site or a specific page. The query outlined below returns an aggregation of pageviews by referrer, user_agent, and IP address. From our experiencing investigating suspicious traffic, this usually gives us a place to start investigating.
#Traffic Investigation Query
SELECT referrer, user_agent, visitor_ip, count(action) as pageviews FROM parsely.rawdata WHERE action = 'pageview' and date(timestamp) = date('desired-date-here') and url like '%url-pattern%' GROUP BY 1,2,3 ORDER BY 4 desc;
Patterns to look for in the results:
- Bot traffic is often: direct traffic (pageviews with null referrers) and from similar user_agents and IP address patterns (ie. 123.45.987.*)
- Using reverse IP address lookups (such as https://mxtoolbox.com/ReverseLookup.aspx), it is also possible to identify other unknown traffic patterns.
- If you are already a Parse.ly customer, get in touch with us, and we'll be happy to walk through how events and metrics in the raw data map to Parse.ly's real-time dashboard.
- If you are not a Parse.ly customer, we are glad to schedule a demo where we can share some of the advantages of our standard metrics and events in measuring user interactions, and how to sync that with custom events relevant to your business.