# Weekly WordPress traffic digest in Slack

> Every Monday at 9am, get a Slack post ranking last week's WordPress articles by Google Analytics pageviews, with the top performers, the underperformers, and week-over-week deltas.

- Workflow type: code
- Services: WordPress, Google Analytics, Slack
- Categories: Marketing
- Published: 2026-05-20

## What it does

- Pulls every article you published on WordPress in the past 7 days, with title, author, and category.
- Matches each article to its Google Analytics 4 traffic so you see pageviews, unique readers, average time on page, and engagement rate.
- Ranks last week's posts, surfaces the top performers and the underperformers, and adds a this-week-vs-last-week delta once a previous run is cached.
- Posts a clean, skim-friendly recap to your team Slack channel every Monday at 9am ET.

## What you'll need

- A WordPress site you can connect (self-hosted or WordPress.com with API access).
- A Google Analytics 4 property installed on that WordPress site, with read access for the account you connect.
- A Slack workspace and the channel you want the weekly recap posted to.

## Prompt

Build a deterministic code workflow that posts a weekly WordPress traffic digest to Slack every Monday at 9am ET. The trigger is cron.

Step 1: WordPress List Posts. Query the configured WordPress site for posts with status=publish and a published date in the last 7 days. For each post, capture title, slug, full URL, author name, and categories.

Step 2: Google Analytics Batch Run Reports against the configured GA4 property for the same 7-day window. Request the metrics pageViews, totalUsers, averageSessionDuration, and engagementRate, dimensioned by pagePath. Use a pagePath filter scoped to the slugs collected in step 1 so we only pull rows for those posts. Include the prior 7-day window as a second report in the batch so we can compute a week-over-week delta.

Step 3: Join the WordPress list and the GA4 rows on URL/slug. For posts with no GA row, fill metrics with 0. Sort by pageViews. Pick the top N performers and the bottom N performers, where N is a configurable input that defaults to 3. For each post, compute the week-over-week delta in pageViews against the prior period rows returned in step 2. Format a single Slack message: a short header (date range, total posts published, total pageviews), then a Top Performers section and an Underperformers section, each line showing title, author, pageviews, engagement rate, and the WoW delta with an up or down arrow.

Step 4: Slack Send a Message to the configured channel with the formatted recap. Use Slack mrkdwn so titles link to the post URL.

Configurable inputs: WordPress site (credential picker), GA4 property ID, target Slack channel, and the number of top and bottom posts to surface (default 3 and 3). The schedule (Monday 9am ET) should also be editable.

Integrations to use: wordpress, google-analytics, slack. Keep every step deterministic — no LLM nodes. If GA returns no rows for the period, still post a short Slack message saying which posts shipped and that no traffic data is available yet.

## How to customize

- Change the schedule. Move it off Monday 9am ET to whatever day, time, and timezone fits your team's stand-up rhythm.
- Change the size of the leaderboard. Pick how many top performers and how many underperformers to call out each week.
- Change the Slack destination. Send to a marketing channel, an editorial channel, or DM the editor in chief.
- Change the metrics shown. Drop engagement rate, add average session duration, or include only authors you care about.

## FAQ

### Do I need a developer to set this up?

No. You connect your WordPress site, your Google Analytics 4 property, and your Slack workspace once, pick the channel, and the workflow runs every Monday on its own.

### Will this work with WordPress.com or only self-hosted WordPress?

Both work, as long as the REST API is reachable for the account you connect. The same setup applies.

### What if Google Analytics has no data for a post yet?

Posts with no recorded traffic still show up in the recap with zeroes, so you can tell what shipped but underperformed instead of silently dropping them.

### How does the week-over-week comparison work?

The first run only shows last week's numbers. From the second run onward, each post is compared to its previous week so you see the change.

### Can I post the recap to more than one Slack channel?

Yes. You can duplicate the Slack step to post to a second channel, or DM a specific person in addition to the main channel.

Use this prompt in General Input: https://www.generalinput.com/prompts/weekly-wordpress-traffic-digest-in-slack