How to populate your Paramark data catalog

Last updated: September 29, 2026

You've just kicked off with Paramark. You're excited to see your first MMM, your first incrementality test, and a clear picture of what's actually driving growth. And then your Growth Advisor hands you a spreadsheet called a Data Catalog and asks you to fill it out.

This article explains what the Data Catalog is, why it matters, and how to fill it out well. It's written in two layers:

  • a short strategic overview for whoever is sponsoring the Paramark relationship (usually a marketing leader)

  • a detailed column-by-column reference for whoever is actually going to populate it (usually someone on your data or analytics team). If you're both of those people, read straight through.

The short version: the Data Catalog is the single most important document you'll produce during onboarding. An hour spent filling it out accurately saves weeks of back-and-forth and directly shortens the time to your first MMM.


What is the data catalog and why it matters?

The Data Catalog is your inventory of every dataset you're sharing with Paramark. For each file, table, or sheet, it captures four things: where the data lives, what kind of data it is, how each row is structured, and how campaigns should be grouped in your marketing mix model.

Think of it as a handoff document. Without it, our team has to open each file, guess at what it contains, confirm assumptions with you over Slack, and repeat that process every time your data changes. With a complete catalog, our modeling pipeline knows exactly what to do with each file the moment it lands. The difference in onboarding speed is substantial: customers who fill out the catalog carefully typically see their first MMM one to two refresh cycles faster than customers who treat it as an afterthought.

There's a second reason it matters. The catalog becomes your own reference document. Six months from now, when a new analyst joins your team or someone asks "what tab are we using for the LinkedIn spend again?", the catalog is the answer. It documents your own marketing data in a way most organizations never have before.

How the catalog fits into onboarding

The Data Catalog sits alongside a second document called Sharing data with Paramark, which defines the supported data schemas. Where the schema document tells you what shape your data needs to be in, the catalog tells us what you're actually sharing and where to find it. You'll use both. The catalog points at specific files or tables; the schema document explains what each row of those files or tables should look like.

You'll typically populate the catalog during the data onboarding phase, shortly after your kickoff call. Your Growth Advisor will either co-fill the first few rows with you on a call, or send the template with examples and review it async.


Before you start: Three things to gather

Before opening the catalog, it helps to have three things ready. Doing this reduces the back-and-forth during the walkthrough.

  1. A list of the channels that are in scope for your first marketing mix model. This came out of your kickoff call and the pre-onboarding questionnaire. Common inclusions are Google, Meta, LinkedIn, TikTok, Events, Email, SEO, Direct Mail, OOH, CTV, and Podcasts. If you're not sure whether a channel belongs in the model, ask your GA.

  2. Your primary target metric and whether you have it broken out by geography. For most US customers this means state-level data. For international businesses, it means country plus sub-country (province, region, or equivalent). Geo-level data is what enables incrementality testing alongside your MMM, so the earlier you can confirm the availability of geo data, the better.

  3. A named owner for each channel's data. This is a real person's email address, not a distribution list. If the same person owns three channels, that's fine. If an agency handles a channel, the owner is still someone on your team who can answer questions and escalate to the agency.


How the catalog is organized

The catalog has three sections.

  • The Legend defines every column in the document. You don't fill this in; you reference it. If you're ever unsure what a column means, the Legend is the first place to look.

  • The Data Owners table is a short list of who on your team owns each channel's data. This is the first thing to fill out.

  • The Data Sources sections are where the bulk of the work happens. There's one section per file type: Fivetran, CSV, Excel, Google Sheets, Parquet, and Warehouse. You only need to fill out the sections that apply to you. Most customers use two or three. Within each section there are usually two tables: one describing your files or tables, and one describing how campaigns should be grouped in the MMM.


Column-by-column reference

This section is for whoever is actually populating the catalog. If that's you, the table below is the quickest way to get unblocked on specific columns. Each entry explains what the column means in plain language and flags the most common mistakes we see.

Top-level columns (appear in most tables)

Column

What it means

Common pitfalls

Store

Where the data physically lives. Either "Drive" (shared Google Drive folder) or "s3" (the S3 bucket you've shared)

Forgetting to pick one; using "local" or "our warehouse" (use the Warehouse section for warehouse data)

Path

The folder path to the file. For Drive, starts with the shared folder name (e.g. "Paramark <> Acme/Events data/"). For S3, starts with "/"

Using a path that only works from one person's machine

File name

The exact name of the file, including extension

Forgetting the extension; using a name that doesn't match reality

Worksheet / Sheet name

For Excel and Google Sheets only: the tab name

Referencing a file-level name instead of the specific tab

Schema

How each row in the file is structured (see below)

Defaulting everything to "Daily aggregate" regardless of actual shape

Category

Either "Marketing" (channel inputs like spend and impressions) or "KPI" (business target metrics like signups or revenue)

Marking a target metric as Marketing

Channel

The marketing channel this data is for. Use "N/A" for KPI rows

Populating a channel name for KPI rows

Currency

The currency of any spend values in the file. "N/A" if no spend

Leaving this blank; guessing USD when the business operates internationally

Notes

Any context that would help us interpret the data

Leaving it blank when there are known issues (use it to flag them)

Schema options

The Schema column deserves its own explanation because it's where most of the confusion lives. It tells us what one row of your file represents.

Schema

One row per

Typical use

Daily aggregate

One day

Organic channels, total spend per day, daily KPI totals

Daily campaign-level

One day and one campaign

Paid ad data broken out by campaign

Monthly aggregate

One month

Events, sponsorships, anything reported monthly

Time window total

One time window (with start and end dates), totals over the window

OOH, linear TV flights

Time window daily

One time window with daily average values

Media buys where daily breakdowns aren't available

Daily geo

One day and one region

KPI data broken out by state or country, required for experimentation

Post

One post or piece of media

Organic social, where you know total impressions per post but not per day

If you're unsure which schema fits, open one of your files, look at what uniquely identifies a single row, and match that to the list above. If a row is uniquely identified by the combination of date and campaign name, it's daily campaign-level. If by date alone, it's daily aggregate. If you have geo and date, it's daily geo.

Campaign mappings

Each file type section has a second table for campaign mappings. You only need this for channels where you want to see sub-groupings in your MMM, for example splitting Meta into "Prospecting" and "Retargeting", or splitting Google into "Branded Search", "Non-Branded Search", and "YouTube".

For each sub-group you want to see, you add a row with:

  • Channel is the top-level channel (Meta, Google, LinkedIn, etc.).

  • Group name is what you want the sub-group called in your MMM output. This is your label, so pick something you'd be comfortable seeing in a board deck.

  • Matching columns is the column in your raw data the rule looks at, usually campaign_name.

  • Matching expression is one of three patterns: starts with "X", ends with "Y", or contains "Z".

  • Case-sensitive is whether the match is literal (Y) or flexible (N). Most customers use N.

Two things to remember. Rules are evaluated top to bottom, and the first match wins. So if you have a rule contains "brand" above a rule contains "RTG", a campaign called brand_RTG will match the first rule, not the second. Order your rules from most specific to most general.

And if you don't add any campaign mapping rules for a channel, we'll treat the whole channel as a single group. That's a fine default when sub-group granularity doesn't matter to you. Make it a choice, not an omission.


A walkthrough with a realistic example

Suppose you're onboarding with the following channels: Google Ads (broken into branded search, non-branded search, and YouTube), Meta (broken into prospecting and retargeting), LinkedIn, Events, and Email. Your target metric is daily signups, available by US state.

Your catalog might end up looking like this (showing the structure, not every row):

Data Owners

Channel

Data Owner

Notes

Google

sarah.nguyen@yourcompany.com

Meta

sarah.nguyen@yourcompany.com

LinkedIn

sarah.nguyen@yourcompany.com

Events

marcus.webb@yourcompany.com

Field marketing lead

Email

priya.shah@yourcompany.com

Lifecycle team

Signups (KPI)

a.person@yourcompany.com

Warehouse-owned

Data Sources (Warehouse)

Warehouse

DB Schema

Table Name

Schema

Update Frequency

Category

Channel

Currency

Snowflake

paramark_share

google_campaigns

Daily campaign-level

daily

Marketing

Google

USD

Snowflake

paramark_share

meta_campaigns

Daily campaign-level

daily

Marketing

Meta

USD

Snowflake

paramark_share

linkedin_daily

Daily aggregate

daily

Marketing

LinkedIn

USD

Snowflake

paramark_share

signups_by_state

Daily geo

daily

KPI

N/A

N/A

Data Sources (Google Sheets)

Path

Spreadsheet

Tab

Schema

Category

Channel

Currency

Paramark <> Your Co/Events

Events 2024-2025

Registrations

Monthly aggregate

Marketing

Events

N/A

Paramark <> Your Co/Events

Events 2024-2025

Spend

Monthly aggregate

Marketing

Events

USD

Paramark <> Your Co/Email

Email program

Weekly

Daily aggregate

Marketing

Email

N/A

How to document OOH costs and list population

OOH is one of the most common places customers pause in the catalog because there are usually two separate jobs: documenting the spend source itself, and deciding whether you also want any breakout list or grouping logic populated.

Start with the spend source. In most cases, OOH belongs in the catalog as Marketing data with a schema of Time window total if each row represents a flight with a start date, end date, and total cost over that window. If you only have evenly spread daily values for the flight, Time window daily may be the better fit instead. The important thing is that the schema matches what one row actually means.

Then decide whether a second list also needs to be filled out. If you want Paramark to break OOH into distinct buckets in the MMM output — for example by market, vendor, creative program, or another recurring naming pattern — populate the relevant grouping or mapping list as well. If you do not need a separate breakout, it is fine to fill the OOH cost source and leave the grouping list empty; Paramark will treat OOH as one channel bucket.

A simple rule of thumb:

  • Fill both lists when you need OOH spend documented and you want consistent sub-group reporting.

  • Fill only the cost source list when all OOH spend can stay in a single channel line.

If you are unsure whether the second list is worth the effort, ask: Would we actually make different budget decisions from these OOH sub-groups? If yes, document the breakout now. If not, keep it simple and add the split later if the business starts managing OOH more granularly.

For customers working from spreadsheets, this usually means checking that the OOH tab has clear flight dates, a total cost field, and a stable naming field if you want any breakout logic later. If the costs are already filled but the grouping list is still blank, that is not automatically a problem — it only becomes one if you expected a separate OOH bucket structure in the model.

Campaign Mappings (Warehouse)

Channel

Group Name

Matching Columns

Matching Expression

Case-sensitive

Google

Branded Search

campaign_name

starts with "brand"

N

Google

YouTube

campaign_name

contains "YT"

N

Google

Non-Branded Search

campaign_name

N/A (catch-all)

N/A

Meta

Retargeting

campaign_name

contains "RTG"

N

Meta

Prospecting

campaign_name

N/A (catch-all)

N/A

Notice the ordering in the campaign mappings. The specific rules come first, and the catch-all for each channel comes last. If you reversed that order, everything would match the catch-all and the breakouts would never fire.


Common Questions

Do I have to fill out every section?

No. Only fill out the sections for file types you're actually using. Most customers use two or three of the six sections.

How often should I share impression data with Paramark?

Daily is the best default whenever you can provide it. Daily impression data gives Paramark more signal to work with, makes it easier to spot channel mix changes or campaign anomalies, and helps your Growth Advisor diagnose strange reads faster. Weekly data can still work if that's the cleanest export you have today, but it is less useful for debugging and for interpreting fast-moving periods.

If you're entering a period where spend or channel strategy may change quickly (for example, a seasonal push, a major launch month, or a concentrated campaign window), moving from weekly to daily data is usually worthwhile. If you do switch cadences, make the change explicit in your catalog or notes and flag it to your Growth Advisor so the next refresh is interpreted correctly.

How often are campaign mappings updated?

Campaign mappings are not updated on a fixed automatic schedule. They change when the underlying mapping sheet or catalog entry is updated and the revised mapping is picked up in the next refresh cycle. If you change naming conventions, add a new partner or channel bucket, or notice campaigns landing in the wrong place, update the mapping documentation and flag it to your Growth Advisor so the next refresh uses the new logic.

What does it mean if a campaign maps to null?

A null value usually means none of the current mapping rules matched that campaign row. The most common causes are a new campaign or partner name that was never added to the mapping table, a rule ordering issue where a more general rule is catching traffic before the intended one, or a typo / naming variation that the current expression does not cover. Start by checking the raw value in the matching column, confirm there is a rule for that pattern, and make sure the rules are ordered from most specific to most general.

What if spend from two partners is currently combined into one channel or sheet?

If two partners are being grouped together but you want to analyze them separately, update the underlying data source or mapping documentation so each partner has its own distinct breakout. In practice, that usually means one of three things: splitting them into separate tabs or files, adding a distinguishing column or naming pattern in the raw data, or adding explicit mapping rules so each partner routes into its own group. The right choice depends on where the combination is happening, but the key principle is the same: if the source data combines two partners under one label, the MMM will treat them as one input until that distinction is made upstream or in the mapping logic.

What if a mapping column or tab change disappears from my spreadsheet?

If a sheet is regenerated by an automated process each day, manual columns or edits added directly in that output can disappear the next time the process runs. The safest fix is usually to add the mapping upstream in the source data or re-apply it in a later transformation step after the automated overwrite has finished. If you need a persistent breakout like an affiliate segment, document where that logic should live and flag it to your Growth Advisor so the next refresh uses a stable source instead of a manual spreadsheet-only edit.

What if my data lives somewhere not listed (like a proprietary tool or a BI tool export)?

Export it to one of the supported formats (CSV, Excel, Google Sheets, or Parquet) and document it there. If your data lives in a warehouse we don't have a section for, talk to your GA; we support most major warehouses and can adapt.

Can I update the catalog later?

Yes, and you should. Treat it as a living document. Whenever you add a channel, change a file name, migrate to a new warehouse, or restructure your campaign naming convention, update the catalog. A stale catalog causes silent failures in your MMM refresh.

Do I need campaign mappings if I don't care about sub-channel breakouts?

No. If you leave campaign mappings empty for a channel, we'll treat the whole channel as a single group in your MMM. That's a perfectly valid choice for channels where the breakout doesn't matter.

What if some of my data is from an agency?

List your internal team member as the data owner and mention the agency in the Notes column. The owner should be the person on your team who can escalate to the agency when there's a question.

We have multiple products or business lines. How do I handle that?

Talk to your GA. In most cases we'll either build separate models per product (in which case you'd fill out a separate catalog per product) or add a product column to each of your files. Your GA will walk you through which approach fits.

What happens if I skip the catalog and just share the data?

We'll still be able to work with your data, but every question we have becomes an email, and your first MMM will likely slip by at least one refresh cycle. The catalog front-loads the clarifications so the modeling pipeline can run cleanly.

How can I tell whether a Google Sheets invitation related to Paramark onboarding is legitimate?

If you receive a Google Sheets or spreadsheet invitation during onboarding, treat it as legitimate only after you confirm that it lines up with your active Paramark workstream and comes from the expected person or domain. The safest checks are simple: confirm the spreadsheet name matches the onboarding document you were told to expect, confirm the sender is someone you've already been working with, and when in doubt ask your Growth Advisor before opening or editing the file.

As a rule of thumb, be cautious with invitations from unfamiliar external senders, unexpected spreadsheet names, or requests that do not match the current onboarding step. If something looks off, forward the invite to your Paramark contact and ask them to verify it before you interact with the file.


How to explain the catalog internally

If you need to explain why you're asking a data engineer or analyst to spend an hour on this, here's a short script:

Paramark needs a documented inventory of every data file or table we're sharing with them. It's one spreadsheet, it takes about an hour if we block the time, and it removes almost all of the back-and-forth we'd otherwise have during onboarding. It also gives us our own canonical reference for what marketing data we have and where it lives, which we've never actually had in one place.

And if anyone pushes back on the value:

The alternative is that we share the raw files and Paramark asks us every question they have in real time over Slack. Customers who do it that way typically wait an extra two to four weeks for their first MMM. An hour of documentation saves us weeks of reactive clarification.


Closing Thought

Filling out the Data Catalog is the least glamorous part of onboarding, and also one of the highest-leverage. Everything downstream (your first MMM readout, your first experiment design, your ability to confidently reallocate budget based on measurement) depends on us starting from a shared understanding of what your data actually is.

If you get stuck on a specific column, a specific file, or a specific schema choice, your Growth Advisor would much rather hop on a 20-minute call than receive a partially filled-out catalog two weeks later. Use them. That's what they're there for.


Want to learn more about onboarding? Check out other Paramark onboarding articles here