Media analytics engineering

I build the data, API, automation, and AI infrastructure behind distributed media operations.

I wire together .com analytics, social platforms, paid media accounts, CMS workflows, and AI models so media teams can understand performance, fulfill sponsor obligations, and take action without living in exports.

See Capabilities

Meridian Media Group

Performance Dashboards

Posts

1,284

+9.2% vs prior period

Impressions

42M

+14.7% vs prior period

Engagements

3.8M

-2.1% vs prior period

Impressions by Platform

YouTubeFacebookInstagramXTikTok
Capabilities Showcase

A distributed media operating layer, shown in pieces

Meridian Media Group is a fictional distributed media company with a .com property, original series, organic social, sponsored content, and paid promotion across major platforms. These demos use synthetic data and stubbed credentials, but the workflows mirror real builds.

Data Pipelines

Meridian publishes on its .com, YouTube, Facebook, Instagram, X, TikTok, and Snapchat, then supports the content with paid media across the same ecosystem. The core build is reliable API ingestion into dashboards, scheduled reports, and operational destinations like Slack, Teams, Monday.com, or Airtable.

Connected Accounts

Source systems available for ingestion, reporting, automation, and AI enrichment.

18 connected
Organic social accounts
8 accounts
YouTube
Meridian Main · 7f3a9d2eMeridian Shows · bb5c7e42
2 on
Facebook
Meridian Media Group · c22bb945
1 on
Instagram
@meridianmedia · 8ab31ce7@meridianshows · f2d6aab9
2 on
X
@MeridianMedia · 94eb2f53
1 on
TikTok
@meridianmedia · 566d939a@meridianclips · cc69d5bb
2 on
Snapchat
OAuth available
off
Social ad accounts
4 accounts
Google Ads
Meridian YouTube Promotion · 5b44f5f7
1 on
Meta Ads
MMG Paid Social · 1a945748Sponsor Studio Boosting · e57c0f47
2 on
X Ads
OAuth available
off
TikTok Ads
Meridian TikTok Ads · c08ba861
1 on
Snapchat Ads
OAuth available
off
Google Analytics
2 accounts
GA4
meridianmedia.com · 2fe2e776shows.meridianmedia.com · df16cc29
2 on
CMS / metadata locations
4 accounts
Airtable
Sponsor Deliverables Base · abd574cf
1 on
Monday.com
Content Operations Board · 39f63485
1 on
Google Sheets
Daily Exec Report · 7cf05859Sponsor Pacing QA · f7950264
2 on

Content Scoring (AI Powered)

Once the platform data is flowing, assets can be re-ingested and sent through Gemini or other models to generate consistent metadata: topic, format, hook, sponsor presence, talent, tone, audience, and creative attributes. That metadata becomes the foundation for scoring content groups and finding trends that are invisible in platform dashboards.

Content Scoring

Scores blend platform performance, AI metadata, format, audience fit, sponsor context, and engagement quality.

Sample model output
01
Chef Challenge: 60-second pantry reset
Short-form video2.4M impressions184K engagements
91score

Sponsor-led TikTok cutdown with creator host, product integration, and recipe payoff.

creator-ledrecipe payoffsponsor visiblefast hookhigh replay value
02
Full Episode: Inside the new creator kitchen
Long-form show1.8M impressions96K engagements
84score

YouTube episode tied to the original series launch with talent-led intro and sponsor mid-roll.

original serieshost trustmid-roll sponsorkitchen tourepisode anchor
03
Carousel: Five ways viewers are cooking differently
Carousel940K impressions72K engagements
78score

Instagram education carousel built from episode themes and AI-generated topic metadata.

educationalsave-worthycarouselconsumer behaviorderived from episode
04
Article recap: What the episode revealed
Article420K impressions19K engagements
69score

.com article package connected to GA4 sessions, scroll depth, social referrals, and sponsor tags.

recapsearch intentsocial referralsponsor mentionmedium scroll depth
05
Static sponsor reminder
Static image310K impressions8K engagements
54score

Late-flight Facebook image post with low creative variation and narrow audience signal.

static creativelow noveltylate flightbrand reminderlimited comments

Enhanced Sentiment Analysis

Comments are interpreted alongside the original asset, caption, sponsor context, and platform. That lets the model separate a true negative reaction from sarcasm, format fatigue, sponsor-fit concerns, long-form intent, or audience demand for a recurring series.

Enriched Comments

Filterable fields generated from the comment, original asset, caption, and platform context.

1
Positive
1
Neutral
2
Negative
Negativetrustdisappointmentad fatigue
AI enriched

"I like this host, but this felt way more like an ad than a normal episode."

Entities mentioned
host · Talentsponsor segment · Brand integration
Editorial suggestion

Soften sponsor reads and preserve the host's normal editorial voice.

Positiveinterestusefulnessanticipation
AI enriched

"Please make this a recurring show. The first three minutes were actually useful."

Entities mentioned
recurring show · Formatfirst three minutes · Segment
Editorial suggestion

Consider a recurring series and preserve the concise opening structure.

Negativesarcasmfatigueannoyance
AI enriched

"Love getting the same clip for the fourth time today, really fresh stuff."

Entities mentioned
same clip · Creative assetfourth time today · Frequency signal
Editorial suggestion

Reduce repeat exposure and rotate platform-specific creative variants.

Neutralcuriosityintentmild frustration
AI enriched

"Can you drop the full interview link? The TikTok cut is too short."

Entities mentioned
full interview · Long-form assetTikTok cut · Platform edit
Editorial suggestion

Add a full-interview link and test pinned comments for long-form conversion.

Automated Action Workflows

Because performance data is collected automatically, workflows can watch for spend, impression, delivery, pacing, or engagement conditions and act directly on the asset or campaign: change budgets, update statuses, extend end dates, send approvals, or update CMS records.

Rules Engine

Metric thresholds trigger predefined actions with governed execution modes.

3 active rules

Impressions milestone

Sponsor A launch reel

Auto Today, 9:42 AM
IfImpressions>100,000thenSlack notificationReached 100K Impressions

Campaign fatigue control

Meta Ads · Sponsored Clips

Approval Yesterday, 4:18 PM
IfFrequency>4.5thenCampaign statusDisabled

Sponsor underdelivery

Sponsor B flight

Approval May 22, 11:58 AM
IfDelivery progress<70%thenBudget change+12% TikTok / Meta

Approval queue

1 pending

Set Meta Ads · Sponsored Clips status to Disabled after frequency crossed 4.5.

Audit log

9:42 AM · Slack sent: "Reached 100K Impressions"

Yesterday · Status change queued: Disabled

May 22 · Budget change +12% TikTok / Meta

Assets, CMSs and MRSS Feeds

Media assets can be pulled from social platforms, stored in Google Cloud Storage, enriched with AI and CMS metadata from tools like Monday.com, Airtable, and Google Sheets, then exposed through REST APIs or MRSS feeds. The feed stub is live at /api/dam/feed/mrss.

Media asset ingestion

Photos and videos stored in GCS with custom metadata attached from AI models, CMSs, and platform performance data.

Search assets
01
Episode 04 full interview
YouTubeGCSMetadata: Monday.com
talent: Maya Chenseries: Creator Kitchentopic: meal prepsponsor: Hearthly
/assets/vid_001
02
Sponsor A launch reel
InstagramGCSMetadata: Airtable
format: reelhook: product demorights: 30 dayscampaign: Spring Reset
/assets/vid_014
03
TikTok creator cutdown
TikTokGCSMetadata: Google Sheets
creator: Jules Parkmood: playfulCTA: watch full episodescore: 91
/assets/vid_032
04
Snap vertical story pack
SnapchatGCSMetadata: AI generated
orientation: verticalsafe area: passedtopic: pantryexpiry: 2026-06-20
/assets/img_018
05
Series poster key art
CMSGCSMetadata: Google Sheets
show: Creator Kitchenseason: 01usage: syndicationrights: review
/assets/img_044
GET /assets
GET /assets/{id}
GET /feed/mrss

// optional query params
?type=video
?metadata.sponsor=Hearthly

Metadata sources

AI visual analysisCMS fieldsRights windowsPerformance metricsEditorial tags

Custom MCP Servers

Some client tools do not have first-class Claude or ChatGPT connectors, and some connectors can read but not write. Custom MCP servers make those APIs usable inside AI workflows: create files, update CMS items, change campaign records, pull reporting context, or trigger internal systems.

MCP Workflow

Mock AI workflow using client-specific read/write tools.

4 tools
User request

Which sponsored posts are underdelivering, and can you create a Google Doc recap plus open Monday.com follow-up items?

Tool registry
get_campaign_analytics
Google AdsMeta AdsX AdsTikTokSnapchat
campaign delivery, spend, pacing, and performance
get_asset_metadata
Google Cloud StorageAirtableMonday.com
asset metadata and CMS-enriched fields
create_google_doc
Docs
formatted recap doc
create_monday_item
Monday
follow-up tasks
Execution trace
1
get_campaign_analytics
2 underdelivering flights
2
get_asset_metadata
assets + rights matched
3
create_google_doc
recap doc created
4
create_monday_item
2 tasks opened
AI response

I found two underdelivering sponsor flights, created the recap doc, and opened Monday.com follow-ups with affected assets, pacing gaps, recommended actions, and owners.

Integrations

Google DriveGoogle SheetsMonday.comAirtableSocial APIsAd platforms
server.tool("create_google_doc", {
  title: z.string(),
  summary: z.string(),
  rows: z.array(reportRowSchema)
});
Case studies

Previous Works

Use the placeholder password 'media' for this design pass. In production, this becomes an environment-backed password gate with session storage.

Request or enter access

About

Veteran data and API engineering for modern media teams.

I specialize in the unglamorous but high-leverage layer between media platforms, warehouse tables, dashboards, AI models, and operating workflows. That means OAuth, pagination, quotas, schemas, backfills, data quality, reporting methodology, and the practical API work needed to make distributed performance measurable.

Engagements usually start with mapping the source systems and business questions, then move into scoped pipelines, dashboards, automations, AI enrichment, and documentation that lets non-technical teams trust and use the system.

Contact

Bring the platform sprawl. Leave with a data and automation plan.

Calendly embed placeholder

Form endpoint stub: POST /api/contact