← Evidence
MEDIA / CONTENT MONETISATION

1000words: Turning Editorial Traffic
into Revenue Attribution

Content engagement scoring, affiliate click tracking, ad revenue integration, and newsletter impact quantification for a photography and culture portal.

The brief

1000words was a photography and culture editorial portal - longform articles, news, interviews, curated photo essays. Revenue came from display advertising (Google Ad Manager), sponsored content, affiliate links (book and print sales), newsletter traffic, and occasional events. The problem: editorial traffic was strong but revenue attribution was a black box. The team knew which articles got pageviews but couldn't connect content performance to any revenue metric. Sponsored content was priced on 'reach' because nobody could demonstrate engagement depth. The newsletter was 'important' but nobody could quantify how important.

What we found

GA Universal with default configuration.

Pageviews and sessions only. No scroll depth, article completion, internal clicks, or outbound affiliate click tracking.

Google Ad Manager and GA were not connected.

Ad revenue in GAM, traffic in GA, no link between them. Revenue per session, per article, per source all unknown.

Affiliate clicks were invisible.

Outbound clicks to book shops and print retailers left the site untracked. Revenue appeared in affiliate dashboards days later with no article-level attribution.

Newsletter impact was unmeasured.

Inconsistent UTM tagging - some newsletters tagged, some not, some with incorrect UTMs attributing to 'direct'. No data to support the belief it was the most valuable channel.

What we built

GA4 migration with editorial event taxonomy.

Custom events: article_scroll_25/50/75/90, article_read_complete (90%+ scroll + 60s minimum), outbound_affiliate_click (with destination, product, article slug), internal_recirculation_click, newsletter_signup, social_share.

Content engagement scoring.

Calculated score combining scroll depth, time on page, recirculation, social shares. Custom dimension in GA4. An article with 800 views and 72% completion scored higher than one with 3,000 views and 15% completion.

Affiliate click attribution.

Every outbound affiliate link tagged with click event: article URL, partner, product, link position. Click-through rate measurable per article, partner, and traffic source. Combined with affiliate revenue data in Looker Studio for per-category revenue estimation.

Newsletter UTM standardisation.

Strict UTM conventions for all links. GA4 showed newsletter traffic had 2.3x engagement score and 1.8x affiliate click rate vs organic search - confirming the team's intuition with data.

Google Ad Manager revenue integration.

GAM linked to GA4. Revenue per session, per article, per source, per category visible for the first time. Long-form interviews generated 3.4x more ad revenue per session than news briefs.

Looker Studio editorial dashboard.

Content performance, revenue metrics, channel performance, and 'best performing content' ranking combining engagement + revenue rather than just pageviews.

Results

Over 4 months

Content events tracked
1 → 9
Was pageview only - now 9 custom events
Articles with engagement scoring
0 → 100%
Every article scored
Newsletter attribution
2.3x engagement
1.8x affiliate clicks vs organic
Affiliate click tracking
Zero → Full
Article-level attribution
Ad revenue visibility
Per article
Interviews = 3.4x vs news briefs
Sponsored content CPMs
+40%
Renegotiated on engagement data

The most commercially impactful outcome: with engagement scoring and ad revenue data, the team renegotiated sponsored content rates using completion rates and time-on-page instead of raw pageviews. Two major brand partnerships renewed at 40% higher CPMs.

Tech stack

GA4 (migrated from UA) · Google Tag Manager · Google Ad Manager integration · Custom event taxonomy · Looker Studio · Calculated engagement scoring

Running a content business?

We'll show you what your editorial traffic is actually worth - and build the measurement to prove it.

Request an Audit →