Video Production Tracker Template, and Why Your Spreadsheet Keeps Lying
The columns, status definitions and owners I use to track 15 to 60 active videos, and why I moved the status column off the Google Sheet and onto the video itself.
The video production tracker template I built for my editing agency was a Google Sheet I honestly believed was perfect, with one row per video, a dropdown on every status cell and a link column pointing at the latest cut. I was very very proud of that sheet, right up until the week it helped us send the wrong version of a paid ad to a client.
The row said Approved and the link pointed at the second cut, so that's what our delivery person exported, but the client had actually approved the third cut, which fixed the offer price on the end card. Nobody touched the sheet because the editor was busy updating the video, right, not the spreadsheet about the video. The ad ran with the old price for most of a day, I paid for the rush re-export myself, and that client double-checked every file we sent for months afterwards.
Nobody on my team was careless, and the lesson I took is that a tracker is a second copy of facts that live somewhere else, and a second copy always drifts. So below is the tracker I still use for planning, and then the change that actually fixed it, which was moving the status off the sheet and onto the video.
The columns every video production tracker needs
I group the columns by how often they change, right, because what the video is and who's working on it barely move, while where it stands changes constantly, and that's exactly where the trouble starts. I keep one row per deliverable, because a launch campaign with a hero film, three cutdowns and a 9:16 version is five things approved on five different days. Paste this header into cell A1 of a Google Sheet, name the tab Tracker, and split it with Data, then Split text to columns:
Video ID, Client, Video, Spec, Editor, Client approver, Stage, Status, Current version, Rounds used, Next action, Internal due, Client due, Review link, Last client view, Blockers
This is one filled row for a 30 second vertical skincare ad in its second round, so you can see what a useful row reads like:
Video ID: V031
Client: [skincare brand]
Video: Spring launch hero ad
Spec: 9:16, 30 sec, burned-in captions
Editor: [editor name]
Client approver: [name, job title]
Stage: Post
Status: Client review
Current version: MV2
Rounds used: 2 of 3
Next action: Client leaves notes on MV2
Internal due: 12 Sep
Client due: 15 Sep
Review link: [share link]
Last client view: [date and time]
Blockers: Waiting on final offer price
Stage and Status are separate on purpose, because stage is the phase of the job and status is where the current version sits in review. Merge them and you get cells like "post, waiting on client, maybe" that nobody can sort or count. The standard stages of post-production work are a sane default for Stage, and Client approver gets a name and job title, because at 40 active videos one brand often has three people approving.
Rounds used reads "2 of 3" so your contract's scope sits on the same row as the work. Next action starts with a verb and carries a name, for instance "editor cuts MV3 from round two notes", because a next action with no owner is basically a wish. The due dates come from your schedule, and my post production schedule template builds the review rounds into those dates.
- One row per deliverable, never one per project
- A named editor and a named client approver on every row
- Stage and status kept in separate columns
- Current MV and rounds used, written as 2 of 3
- A next action that starts with a verb and a name
- Internal and client due dates side by side
Status definitions for a video production status tracker
The status column is where most trackers quietly fall apart, because "In progress" means one thing to the editor, another to the producer and something else again to the account lead. My fix is that every status answers one question, whose court the ball is in, and exactly one role is allowed to move it. I lock the column to these eight with Data, then Data validation, then a dropdown, so nobody can type "nearly done" into a cell:
- Not started: brief and footage are in; the producer moves it once an editor is assigned.
- Editing: the editor owns it while the next MV is cut, and moves it on upload.
- Internal review: the producer watches first, then sends it forward or back.
- Client review: the ball is outside the building; only the producer moves it, once notes or approval arrive.
- Changes requested: notes are in, and the editor owns it until the next MV is up.
- Approved: the client has written their approval on that exact MV.
- Delivered: masters are sent and confirmed playing on the client's side.
- On hold: something outside the team blocks it, and the blocker is named.
Client review is the only status where the ball sits outside your team, right, and that's why it rots, because nobody inside the building hears about it when the client finally opens the link on a Sunday night. For the Monday meeting I keep a small summary tab with one formula per status, =COUNTIF(Tracker!H:H,"Client review"), repeated for each of the eight names. If it reads, say, 11 in Client review, 6 in Changes requested and 3 on hold, the meeting is about chasing clients rather than editors, does that make sense, right.
Why a post production tracker spreadsheet drifts out of date
Let me do some uncomfortable math, purely for illustration, so plug in your own numbers. Say you run 40 active videos and each changes status about twice a week, that's 80 edits somebody has to remember to type while doing their actual job. If one update in ten gets missed, you have eight rows lying to you by Friday, and the catch here is that you don't know which eight.
The drift comes from where the work actually happens, right, because the editor lives in Premiere Pro and the review tool, the client's notes arrive by email, WhatsApp and the review link, and the sheet is a third place nobody's work passes through. In my experience Current version and Review link drift first because the editor uploads and moves on, then Last client view, which a sheet simply can't know, and then Status itself.
This is where my engineering side kicks in, because software teams stopped keeping a spreadsheet of the latest code long ago, and a version control system keeps the history with the thing itself. I've written about the dashboard side of this in the post production tracking dashboard, but my rule now is simple, one video's status lives in exactly one place, and that place is the video.
A copy typed by hand, usually a day behind, and silent about whether the client ever opened the link
Moves with the upload and the review, shows the latest MV on top and who watched it
Putting status on the video with custom statuses
After the wrong end card, I stopped asking the sheet what state a video was in and started asking the video. Custom statuses are on every PlayPause plan, so I set up the same eight, with the same names, on every asset, and the word on a card always means what the definitions say it means.
The Current version column disappears too, because from the Creator plan up, version stacks put each new upload onto the same card, so the spring ad card holds MV1, MV2 and MV3 with the latest on top. Nobody delivers the second cut by mistake when the third sits above it with the approval written on it, right, and that alone would have saved me that ugly week. The Review link column goes as well, since the share link lives on the card and the client opens it in a browser with no account.
To be very honest, what kept our statuses current was the mobile app, because producers are often on a shoot or in a cab when a decision gets made, and the app lets them change a status and send a share link without a laptop. The video production workflow page shows that loop end to end.
Seeing client activity without chasing, who watched and when
The Last client view column was the most dishonest one in my old sheet, because we filled it in with the date we sent the link. Who-watched analytics, on the Creator plan and up, shows who watched a share link, when, and from which city, so that column becomes something you read off the card.
Say 11 videos sit in Client review and seven were opened while four never were, right, so the seven get a short note asking whether feedback is coming and the four get a resend with one line saying the cut is ready whenever they have two minutes. Trust me on any level, chasing notes on a video nobody has opened is how you end up sounding annoyed at a client who simply missed an email. A view only proves somebody pressed play, though, so I still treat a timecoded comment as the real proof of attention.
Then there's the notes problem, because comments in a review tool are invisible to a team that lives in Slack. On the Creator plan and up, the Slack integration posts every comment to a channel, so when the client flags the price at 00:14, the editor and the producer both see it land, and the video approvals page covers what happens once a note becomes an approval.
A status column tells you what someone remembered to type, while a view log tells you what actually happened on the link.
A tracker template that pairs with your review tool
I didn't throw the sheet away, because some facts genuinely don't live on the video, like the contract's round count, the due dates, the invoice and the approver's job title. What really changed is that the sheet stopped holding anything that changes hourly, so the slim version drops Status, Current version, Review link and Last client view and replaces all four with one link to the PlayPause card:
Video ID, Client, Video, Spec, Editor, Client approver, Stage, Rounds used, Next action, Internal due, Client due, PlayPause card, Invoice, Blockers
That version stays accurate because nothing in it changes hourly, and if your team plans in Notion the same split works there, as I showed in the Notion video production template. The client rules that used to clog a Notes column, things like caption style, logo placement, music library and so on, moved into Playbooks from the Agency plan up, right, so every editor reads one style document before cutting.
How I track multiple video projects each week
On Monday I sort the sheet by client due date, open the card for anything due in the next ten days, and read the status, the top MV and the view log straight off the video. A helper column at the end, =IF(AND(K2<>"",K2<=TODAY()+10),"Open the card",""), flags those rows, since K is Client due in the slim layout, right, so the coordinator filters on it and skips the rest. Usually the coordinator or the supervisor I described in post production supervisor responsibilities owns this pass, managing multiple video projects in one workspace keeps every client's cards within reach, and tracking ten videos at once covers a smaller slate.
At the end of the day, scale is really a plan question, right, because the Creator plan gives you 30 projects and 10 members, and a coordinator running 15 to 60 active videos across several clients usually outgrows that. The Agency plan with Unlimited projects and 50 members is where I'd point most production teams.
Frequently asked questions
What columns should a video production tracker template have?
One row per deliverable, with a video ID, client, title, spec, editor, client approver, stage, status, current version, rounds used, next action, both due dates, a review link and blockers. If your review tool already carries status, version and client views on the video itself, right, drop those columns and link the card instead, so the sheet only holds what changes weekly.
Can I keep using Google Sheets alongside PlayPause?
I still do, for planning, dates, round counts and invoicing, with each row linking out to its PlayPause card for everything that changes during review. What I'd avoid is keeping status in both places, because two copies of one fact will disagree by Wednesday, and the wrong one is usually the one somebody acts on, which is exactly how my wrong end card happened.
Which PlayPause plan do I need for a video production status tracker?
Custom statuses, share links and frame-accurate comments are on every plan, and version stacks, who-watched analytics and Slack are there from the Creator plan at $9 a month. The Agency plan is $19 a month and adds Unlimited projects, 50 members and Playbooks, which is what I'd pick for 15 to 60 active videos, while Enterprise is $27 a month for 150 members.
How often should a post coordinator update the tracker?
If status lives on the video, the sheet only needs a weekly pass, basically on Monday before the status call, since due dates, round counts and owners don't change hourly. The statuses themselves change the moment the work changes, when an editor uploads or a producer reads the client's notes, which is the only rhythm I've found that doesn't depend on somebody remembering to type.
If your sheet is a day behind right now, pick a plan on the PlayPause pricing page, start the 7-day free trial, set up your eight statuses on this week's videos and run one Monday pass off the cards instead of the cells, and I'm pretty sure you won't go back to typing statuses by hand.
So yeah. That's my way of saying it.
Saumyajit co-founded PlayPause after years watching review and approval quietly eat creative teams' deadlines. He writes about the workflow side of video, feedback, versioning, and getting to a clean sign-off.
Related resources
Keep reading
Bring your team into one review space
Centralize feedback, lock approvals, and deliver faster, start free today.
Sign Up for Free