# TikTok Creator Dashboard – Premium Edition  

> **Your all‑in‑one Notion hub for TikTok creators** – content planning, sponsor contracts, performance analytics, visual reporting, and automated reminders. Fully mobile‑friendly, pre‑configured with formulas, multiple views, and ready‑to‑use integrations.

---

## 📚 Onboarding & Quick‑Start Video  

<iframe src="https://www.youtube.com/embed/5ZxJk2vUe8M" title="TikTok Creator Dashboard Walkthrough" width="560" height="315" frameborder="0" allowfullscreen></iframe>  

**Step‑by‑step guide**

1. **Duplicate the template** – Click **Duplicate** at the top‑right of this page.  
2. **Connect your TikTok account** – Follow the “TikTok API Integration” section below.  
3. **Configure your Content Pillars** – Edit the **Content Pillars** multi‑select property in *Content Planning*.  
4. **Add sponsor contracts** – Use the **Sponsor Contract** page (template) and link it to the *Sponsorship Tracker*.  
5. **Set up reminders** – Enable Notion reminders on date fields (see Automation section).  
6. **Review the Dashboard** – All key metrics now appear in the top‑level **Analytics** block.  

---

## 🔗 TikTok API Integration (Auto‑Populate)

> **Goal:** Pull daily video metrics (views, likes, comments, shares, watch time) into Notion automatically.  

| Tool | What it does | Setup steps |
|------|--------------|-------------|
| **Zapier** (or **Make.com**) | Calls TikTok’s **Business API** → updates the *Performance Analytics* database | 1. Create a Zap: **TikTok → New Video Metrics** (requires TikTok Business account & API token). <br>2. Add **Notion → Update Database Item** action. <br>3. Map fields: Video ID → “Video Title”, Views → “Views”, Likes → “Likes”, Comments → “Comments”, Shares → “Shares”, Watch Time (seconds) → “Watch Time”. <br>4. Set up an hourly trigger for data sync. <br>5. Implement error handling to notify via email if the sync fails. |
| **Notion API Token** | Allows Zapier/Make to write to your tables | 1. In Notion → Settings & Members → Integrations → **+ New integration**. <br>2. Enable **Read & write** access to the pages/tables used in this template. <br>3. Copy the **Internal Integration Token** and paste it into Zapier’s Notion connection. |
| **Scheduled Sync** | Runs every hour to keep data fresh | In Zapier, set the trigger to **Every Hour**. |

*If you don’t have a TikTok Business account, you can still manually import CSVs – see the “Manual Import” note in the Performance Analytics section.*

---

## 📊 Dashboard (Top‑Level)

| Block | Content |
|-------|---------|
| **KPIs (Synced Block)** | - **Total Views (Rollup)** – sum of *Performance Analytics → Views* <br>- **Engagement Rate (Formula)** – `round(((prop("Likes") + prop("Comments") + prop("Shares")) / prop("Views")) * 100, 2) %` <br>- **Avg. Watch Time (Formula)** – `round(prop("Watch Time") / prop("Views"), 1) sec` <br>- **Weekly Growth (Formula)** – `if(empty(prop("Prev Week Views")), 0, round(((prop("Views") - prop("Prev Week Views")) / prop("Prev Week Views")) * 100, 2)) %` <br>- **Audience Growth** – Rollup of *Views* over the last 30 days, sum. <br>- **Retention Rate** – Formula: `round((prop("Views") - prop("Prev Week Views")) / prop("Views") * 100, 2) %` |
| **Line Chart – Views Over Time** | Embedded Google Sheet chart (auto‑updates from *Performance Analytics*). See **Visual Analytics** section for embed code. |
| **Pie Chart – Content Pillar Distribution** | Embedded Notion Charts widget (see Visual Analytics). |
| **Competitor Tracking** | Table to track competitors’ metrics (e.g., Views, Engagement Rate) with visual charts for comparison. |
| **Upcoming Deliverables (Board)** | Linked view of *Sponsorship Tracker* filtered to **Payment Due** within next 7 days. |
| **Content Calendar** | Calendar view of *Content Planning* (see Content Planning section). |

---

## 🗂️ Content Planning  

### Database – **Content Planning**  

| Property | Type | Formula / Rollup |
|----------|------|------------------|
| **Title** | Title | — |
| **Status** | Select → *Planned, Filming, Review, Scheduled, Posted* | — |
| **Due Date** | Date (reminder = 1 day before) | — |
| **Content Pillar** | Multi‑select → *Dance, Food, Travel, Education, Trend, Other* | — |
| **Video Length (sec)** | Number | — |
| **Watch Time** | Formula → `prop("Views") * prop("Avg. Watch Time (sec)")` |
| **Notes** | Text | — |
| **Views** | Rollup (from *Performance Analytics*) → `sum` |
| **Likes** | Rollup → `sum` |
| **Comments** | Rollup → `sum` |
| **Shares** | Rollup → `sum` |
| **Engagement Rate** | Formula → `round(((prop("Likes") + prop("Comments") + prop("Shares")) / prop("Views")) * 100, 2)` |

### Pre‑Configured Views  

| View | Type | Filters / Sort |
|------|------|----------------|
| **Board – Production Pipeline** | Board (grouped by **Status**) | — |
| **Calendar – Publishing Schedule** | Calendar (by **Due Date**) | — |
| **Timeline – Filming Timeline** | Timeline (by **Due Date**, show **Video Length**) | — |
| **Gallery – Visual Thumbnails** | Gallery (card preview = **Cover Image**) | Sort by **Due Date** ascending |
| **Table – All Items** | Table (default) | — |
| **Filtered – Upcoming (Next 7 days)** | Table | Filter: **Due Date** is within next 7 days |

---

## 🤝 Sponsorship Tracker  

### Database – **Sponsorship Tracker**  

| Property | Type | Formula / Rollup |
|----------|------|------------------|
| **Brand** | Title | — |
| **Status** | Select → *Negotiation, In Progress, Completed, Cancelled* | — |
| **Contract** | File (upload PDF/Doc) | — |
| **Invoice** | Relation → **Invoices** (see Invoice DB) | — |
| **Payment Due** | Date (reminder = 2 days before) | — |
| **Payment Received** | Checkbox | — |
| **Revenue ($)** | Number | — |
| **Cost ($)** | Number | — |
| **CPM ($)** | Formula → `round((prop("Revenue") / prop("Views")) * 1000, 2)` |
| **ROI (%)** | Formula → `if(prop("Cost") = 0, 0, round(((prop("Revenue") - prop("Cost")) / prop("Cost")) * 100, 2))` |
| **Deliverables** | Text | — |
| **Notes** | Text | — |

### Sponsor Contract Template (Page)  

```
# Sponsor Contract – {{Brand}}

**Effective Date:** {{Date}}  
**Campaign Name:** {{Campaign}}  

## Deliverables
- Video #1: {{Video 1 Details}}
- Video #2: {{Video 2 Details}}
- Stories/Posts: {{Stories Details}}

## Compensation
- Total Fee: ${{Revenue}}
- Payment Schedule: {{Payment Schedule}}

## Terms
- Usage Rights: {{Rights}}
- Exclusivity: {{Exclusivity}}
- Cancellation: {{Cancellation Clause}}

*Signature – Creator:* ______________________  
*Signature – Brand:* ______________________
```

> **How to use:** Duplicate the page, replace placeholders ({{…}}) with actual values, then attach the PDF to the **Contract** field in the *Sponsorship Tracker*.

### Invoice Template (Database)  

| Property | Type |
|----------|------|
| **Invoice #** | Title |
| **Brand** | Relation → **Sponsorship Tracker** |
| **Amount ($)** | Number |
| **Issue Date** | Date |
| **Due Date** | Date (reminder = 1 day before) |
| **Paid** | Checkbox |
| **PDF** | File |

**Pre‑Configured Views**

| View | Type | Filters |
|------|------|---------|
| **All Invoices** | Table | — |
| **Pending Payments** | Table | Filter: **Paid** is unchecked |
| **Upcoming (7 days)** | Table | Filter: **Due Date** within next 7 days |

---

## 📈 Performance Analytics  

### Database – **Performance Analytics**  

| Property | Type | Formula |
|----------|------|---------|
| **Date** | Date | — |
| **Video Title** | Relation → **Content Planning** |
| **Views** | Number | — |
| **Likes** | Number | — |
| **Comments** | Number | — |
| **Shares** | Number | — |
| **Watch Time (sec)** | Number | — |
| **Engagement Rate** | Formula → `round(((prop("Likes") + prop("Comments") + prop("Shares")) / prop("Views")) * 100, 2)` |
| **Avg. Watch Time (sec)** | Formula → `round(prop("Watch Time (sec)") / prop("Views"), 1)` |
| **CPM ($)** | Formula → `round((prop("Revenue") / prop("Views")) * 1000, 2)` |
| **Revenue ($)** | Number (optional – for sponsored videos) | — |
| **Cost ($)** | Number (optional) | — |
| **ROI (%)** | Formula → `if(prop("Cost") = 0, 0, round(((prop("Revenue") - prop("Cost")) / prop("Cost")) * 100, 2))` |

### Rollups for Growth Trends (in a **Dashboard** synced block)

- **Weekly Views** – Rollup of *Views* filtered to the last 7 days, sum.  
- **Prev Week Views** – Rollup of *Views* filtered to 7‑14 days ago, sum.  
- **Week‑over‑Week Δ%** – Formula: `if(prop("Prev Week Views") = 0, 0, round(((prop("Weekly Views") - prop("Prev Week Views")) / prop("Prev Week Views")) * 100, 2)) %`.

### Visual Analytics (Embedded Widgets)

1. **Line Chart – Views Over Time**  
   ```markdown
   <iframe src="https://charts.notion.so/embed?type=line&dataSource=Performance%20Analytics&x=Date&y=Views&title=Views%20Over%20Time" width="800" height="400" frameborder="0"></iframe>
   ```

2. **Pie Chart – Content Pillar Distribution**  
   ```markdown
   <iframe src="https://charts.notion.so/embed?type=pie&dataSource=Content%20Planning&category=Content%20Pillar&value=Views&title=Pillar%20Share%20of%20Views" width="600" height="400" frameborder="0"></iframe>
   ```

> *Both widgets auto‑refresh when the underlying databases change.*

### Pre‑Configured Views  

| View | Type | Filters / Sort |
|------|------|----------------|
| **Table – Raw Data** | Table | — |
| **Grouped – By Pillar** | Table (grouped by **Content Pillar**) | Sort by **Date** descending |
| **Calendar – Video Publish Dates** | Calendar (linked to **Content Planning → Due Date**) | — |
| **Chart Dashboard** | Synced Block (contains the two iframes above) | — |

---

## 📄 Report Generation  

1. **Report Template (Page)** – Duplicate and fill in the date range.  
   ```markdown
   # TikTok Performance Report – {{Report Period}}

   **Total Views:** {{sum(Performance Analytics.Views)}}  
   **Total Likes:** {{sum(Performance Analytics.Likes)}}  
   **Total Comments:** {{sum(Performance Analytics.Comments)}}  
   **Total Shares:** {{sum(Performance Analytics.Shares)}}  
   **Avg. Engagement Rate:** {{average(Performance Analytics.Engagement Rate)}} %  
   **Avg. Watch Time:** {{average(Performance Analytics.Avg. Watch Time (sec))}} sec  

   ## Top 5 Performing Videos
   | Rank | Video | Views | Engagement Rate |
   |------|-------|-------|-----------------|
   {{#each top5}}
   | {{@index+1}} | {{this.Video Title}} | {{this.Views}} | {{this.Engagement Rate}} % |
   {{/each}}

   ## Sponsor ROI Summary
   | Brand | Revenue | Cost | CPM | ROI |
   |-------|---------|------|-----|-----|
   {{#each sponsors}}
   | {{this.Brand}} | ${{this.Revenue}} | ${{this.Cost}} | ${{this.CPM}} | {{this.ROI}} % |
   {{/each}}
   ```

2. **Automated Report Generation (Zapier)**  
   - Trigger: **Every month on day 1**.  
   - Action: **Notion → Create Page** using the above template, auto‑populate the Handlebars variables with rollup values.  
   - Action: **Email → Send** the new page link to your designated email (or Slack).

---

## ⏰ Automation & Reminders  

| Trigger | Action | Tool |
|---------|--------|------|
| **Due Date** (Content Planning) | Pop‑up reminder 1 day before | Native Notion reminder (set on **Due Date**) |
| **Payment Due** (Sponsorship Tracker) | Email reminder to creator & brand | Zapier → **Schedule → Email** |
| **Invoice Due** (Invoices DB) | Slack notification to #finance channel | Zapier → **Slack → Send Message** |
| **Weekly KPI Summary** | Generate and email a short KPI snapshot every Monday | Make.com → **Notion → HTTP → Email** |
| **Monthly Report** | Auto‑create Report page & email link | Zapier (see Report Generation) |

*All automations are pre‑wired with placeholder IDs; replace `{{YOUR_ZAP_ID}}` with your own Zapier webhook URLs.*

---

## ❓ FAQ  

| Question | Answer |
|----------|--------|
| **Do I need a TikTok Business account?** | Yes for the auto‑populate integration. If you only have a creator account, you can manually import CSVs exported from TikTok Analytics. |
| **Can I edit the formulas?** | Absolutely – click any formula field, edit the expression, and the dashboard updates instantly. |
| **Will the charts work on mobile?** | The embedded iframes are responsive; on the Notion mobile app they appear as scrollable images. |
| **How do I duplicate the sponsor contract for a new brand?** | Click the three‑dot menu on the **Sponsor Contract** page → **Duplicate**, then replace the placeholders. |
| **What if I want a different currency?** | Change the **Currency** property in the **Sponsorship Tracker** and **Invoices** databases; all formulas will respect the new unit. |
| **Can I add more content pillars?** | Edit the **Content Pillar** multi‑select property in *Content Planning* – new options appear everywhere automatically. |

---

## 📌 How to Set Up in Notion (One‑Click)

1. **Duplicate this template** – Use the **Duplicate** button at the top‑right.  
2. **Connect integrations** – Follow the **TikTok API Integration** section to add Zapier & Notion API tokens.  
3. **Set property types** (already pre‑configured, but for reference):  

   - **Content Planning:** Title, Status (Select), Due Date (Date), Content Pillar (Multi‑select), Video Length (Number), Notes (Text).  
   - **Sponsorship Tracker:** Title, Status (Select), Contract (File), Invoice (Relation), Payment Due (Date), Payment Received (Checkbox), Revenue (Number), Cost (Number).  
   - **Performance Analytics:** Date (Date), Video Title (Relation), Views/Likes/Comments/Shares (Number), Watch Time (Number).  
   - **Invoices:** Title, Brand (Relation), Amount (Number), Issue Date/Due Date (Date), Paid (Checkbox), PDF (File).  

4. **Enable reminders** – Click any date field → **Remind** → choose **1 day before** (or custom).  
5. **Publish (optional)** – Share → **Publish to the web** → enable **Allow duplicate as template** to distribute to collaborators.  

---  

*You now have a fully‑featured, analytics‑driven TikTok Creator Dashboard that rivals—and surpasses—any competing template. Join our private Discord community for live support and best practices sharing!*