DEV Community

Sebastian Casvean
Sebastian Casvean

Posted on • Originally published at zenndra.com

Track Medium Follower Growth and Social Graph Snapshots

Track Medium Follower Growth and Social Graph Snapshots

Follower count is vanity. Useful products measure velocity, who follows whom, and superfans on hit posts.

Tool outcome: A medium_social_snapshots table + one SQL query for week-over-week growth.


What to measure

Metric Endpoint Use
Follower velocity /user/{id} + weekly snapshot Creator dashboards
Following graph /user/{id}/following Discovery (“who do they read?”)
Superfans /article/{id}/fans Outreach lists

Snapshot job (pseudo-ETL)

const API = 'https://api.zenndra.com';
const headers = { Authorization: `Bearer ${process.env.ZENNDRA_API_KEY}` };

async function snapshotUser(userId) {
  const profile = await fetch(`${API}/user/${userId}`, { headers }).then((r) => r.json());
  const followers = await fetch(`${API}/user/${userId}/followers`, { headers }).then((r) => r.json());

  await db.query(
    `INSERT INTO medium_social_snapshots (user_id, captured_at, followers_count, following_count, sample_follower_ids)
     VALUES ($1, NOW(), $2, $3, $4)`,
    [
      userId,
      profile.followers_count,
      profile.following_count,
      JSON.stringify((followers.users ?? []).slice(0, 50).map((u) => u.user_id)),
    ]
  );
}
Enter fullscreen mode Exit fullscreen mode

Run weekly—not hourly—to respect rate limits and because trends are slow-moving.


SQL: week-over-week growth

SELECT
  user_id,
  captured_at::date,
  followers_count,
  followers_count - LAG(followers_count) OVER (PARTITION BY user_id ORDER BY captured_at) AS delta
FROM medium_social_snapshots
ORDER BY user_id, captured_at DESC;
Enter fullscreen mode Exit fullscreen mode

Join to your product’s users table when Medium writers are also customers.


Alerting

Alert when delta = 0 for four weeks on an account you monetize—often a content cadence problem, not infrastructure.


Keywords

medium follower analytics, medium api followers, creator growth dashboard, medium social graph.


Further reading

Top comments (0)