Showcase
Each example shows real output produced by trackr itself, from files in the project repository. Input on the left, output on the right.
Pageview through createHandler
examples/output/pageview.jsonDetail: Pageview through createHandler →{
"headers": {
"content-type": "application/json",
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.0 Safari/605.1.15",
"accept-language": "de-DE,de;q=0.9",
"x-forwarded-for": "203.0.113.42"
},
"body": {
"type": "pageview",
"url": "/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=october&email=jane@example.com",
"referrer": "news.ycombinator.com",
"utm": {
"source": "newsletter",
"medium": "email",
"campaign": "october"
},
"ts": 1791961200000
}
}{
"response": {
"status": 200,
"body": "OK"
},
"stored": [
{
"type": "pageview",
"url": "/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=october",
"referrer": "news.ycombinator.com",
"utm": {
"source": "newsletter",
"medium": "email",
"campaign": "october"
},
"ts": 1791961200000,
"sessionId": "c6c4216a1163582e",
"device": "desktop",
"browser": "Safari",
"os": "macOS"
}
]
}Custom event with personal data
examples/output/event.jsonDetail: Custom event with personal data →{
"headers": {
"content-type": "application/json",
"user-agent": "Mozilla/5.0 (Linux; Android 14; Pixel 8) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.6099.144 Mobile Safari/537.36",
"accept-language": "en-US,en;q=0.9",
"x-forwarded-for": "198.51.100.7"
},
"body": {
"type": "event",
"name": "signup_click",
"url": "/users/jane@example.com/settings",
"props": {
"plan": "pro",
"email": "jane@example.com",
"note": "reply to jane@example.com",
"seats": 3
},
"ts": 1791961260000
}
}{
"response": {
"status": 200,
"body": "OK"
},
"stored": [
{
"type": "event",
"name": "signup_click",
"url": "/users/[redacted]/settings",
"props": {
"plan": "pro",
"email": "[redacted]",
"note": "reply to [redacted]",
"seats": 3
},
"ts": 1791961260000,
"sessionId": "6a903f454a1bbf75",
"device": "mobile",
"browser": "Chrome",
"os": "Android"
}
]
}Crawler request
examples/output/bot.jsonDetail: Crawler request →{
"headers": {
"content-type": "application/json",
"user-agent": "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)",
"x-forwarded-for": "66.249.66.1"
},
"body": {
"type": "pageview",
"url": "/pricing",
"ts": 1791961320000
}
}{
"response": {
"status": 200,
"body": "OK"
},
"stored": []
}Tracking pixel
examples/output/pixel.jsonDetail: Tracking pixel →{
"url": "https://example.com/pixel.gif?url=/newsletter/october&ref=mail",
"headers": {
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36",
"accept-language": "en-US,en;q=0.9",
"x-forwarded-for": "192.0.2.15"
}
}{
"response": {
"status": 200,
"headers": {
"cache-control": "no-store, no-cache, must-revalidate",
"content-type": "image/gif",
"pragma": "no-cache"
},
"bytes": 43
},
"stored": [
{
"type": "pageview",
"url": "/newsletter/october",
"referrer": "mail",
"ts": 1791961200000,
"sessionId": "6217de67bbf5a139"
}
]
}Webhook adapter
examples/output/webhook.jsonDetail: Webhook adapter →webhook({
url: "https://api.example.com/events",
secret: "example-secret",
}).save(storedPageview);[
{
"url": "https://api.example.com/events",
"method": "POST",
"headers": {
"Content-Type": "application/json",
"X-Trackr-Signature": "e3630831a1a5de4e9d97478cfb44572aed4f469a8555f4c0dcbadf475ea057cb"
},
"body": {
"type": "pageview",
"url": "/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=october",
"referrer": "news.ycombinator.com",
"utm": {
"source": "newsletter",
"medium": "email",
"campaign": "october"
},
"ts": 1791961200000,
"sessionId": "c6c4216a1163582e",
"device": "desktop",
"browser": "Safari",
"os": "macOS"
}
}
]GA4 Measurement Protocol
examples/output/ga4.jsonDetail: GA4 Measurement Protocol →ga4({
measurementId: "G-XXXXXXXXXX",
apiSecret: "example-secret",
}).save(storedPageview);[
{
"url": "https://www.google-analytics.com/mp/collect?measurement_id=G-XXXXXXXXXX&api_secret=example-secret",
"method": "POST",
"headers": {
"Content-Type": "application/json"
},
"body": {
"client_id": "c6c4216a1163582e",
"non_personalized_ads": true,
"events": [
{
"name": "page_view",
"params": {
"session_id": "c6c4216a1163582e",
"engagement_time_msec": 1,
"device_category": "desktop",
"browser": "Safari",
"page_location": "/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=october",
"page_referrer": "news.ycombinator.com"
}
}
]
}
}
]Postgres insert
examples/output/postgres.jsonDetail: Postgres insert →postgres(client).save(storedPageview);[
{
"text": "INSERT INTO trackr_events (type, name, url, referrer_domain, country, device, browser, os, session_id, utm, props, ts) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, to_timestamp($12 / 1000.0))",
"values": [
"pageview",
null,
"/pricing?utm_source=newsletter&utm_medium=email&utm_campaign=october",
"news.ycombinator.com",
null,
"desktop",
"Safari",
"macOS",
"c6c4216a1163582e",
"{\"source\":\"newsletter\",\"medium\":\"email\",\"campaign\":\"october\"}",
"{}",
1791961200000
]
}
]