Open metrics
This site, by the numbers
Most portfolios ask you to take their word for it. These are the actual numbers behind this one — traffic, enquiries, measured reply time, tool usage. Published whether or not they flatter me.
Traffic
last 30 days
1,180
Page views
621
Unique visitors
First-party and cookie-free. No Google Analytics, no third-party script, no data leaving this server — which is also why these numbers are lower than a tracked site would report.
Published
- Case studies
- 10
- Articles
- 1
- Words written
- 559
Enquiries
- Received (excluding spam)
- 0
- Median first reply
- —
No median yet — that figure needs at least five replies before it means anything, and inventing one from two would be the exact dishonesty this page exists to avoid.
0
Checkups run
no runs recorded yet
6
Webhooks fired
counting since 2026-08-17
29
Questions asked
counting since 2026-08-17
What visitors actually experienced
last 30 days
- Largest paint (p75)
- 3048ms
- Layout shift (p75)
- 0.003
- Interaction delay (p75)
- 336ms
good is under 2500ms · 56 samples
good is under 0.1 · 87 samples
good is under 200ms · 23 samples
Measured in real visitors' browsers — including slow phones on bad networks — and summarised at the 75th percentile against Google's own thresholds, so a fast average cannot hide a slow quarter. Collected first-party with no third-party script, and nothing identifying is stored: a metric, a number, a path.
Dependency health
This site runs its own checkup tool on its own composer.lock every week — 148 packages · audited 2026-09-28.
90/100
Every figure is measured from this site's own database, and each one states the window it covers. Nothing here is estimated, projected or rounded up. Where the data cannot support a claim, the claim is missing rather than invented.
See the live system health