# Cottagecore Shop Dashboard – Premium Edition  

> **Pastel‑themed Notion hub** that unifies **product management**, **inventory**, **finance**, **marketplace sync**, **ad‑spend & ROI**, **social‑media scheduling**, and **seasonal content planning** for cottage‑style wall‑art sellers.  
> 💡 *Pin this page to your sidebar for one‑click access to every critical workflow.*

---

## 📦 Product Kanban Database  

| Status      | Product Name      | SKU   | Price | Tags                     | **Low‑Stock?** | **Marketplace** |
|-------------|-------------------|-------|-------|--------------------------|----------------|-----------------|
| In Stock    | Floral Meadow Print | FM001 | $25   | wall art, floral         | No             | Etsy, Shopify   |
| Running Low | Sunset Landscape   | SL002 | $30   | wall art, sunset         | **Yes**        | Amazon          |
| Out of Stock| Ocean Breeze       | OB003 | $28   | wall art, ocean          | No             | –               |
| In Stock    | Vintage Cottage    | VC004 | $35   | wall art, vintage        | No             | Etsy            |

### Property Types  
- **Status** – *Select* (In Stock, Running Low, Out of Stock)  
- **Low‑Stock?** – *Formula* (`if(prop("Current Stock") <= prop("Reorder Point"), "Yes", "No")`) – triggers built‑in alerts.  
- **Marketplace** – *Multi‑Select* (Etsy, Shopify, Amazon) – links to **Marketplace Integration** table.  
- **Tags** – *Multi‑Select*  

> **Tip:** Link **Status** to the **Inventory Tracker** via a Relation for a single source of truth.

---

## 📦 Inventory Tracker  

| Item            | Current Stock | Reorder Point | Supplier     | Last Restocked | **Value (USD)** | **Low‑Stock?** |
|-----------------|---------------|---------------|--------------|----------------|-----------------|----------------|
| Canvas 12x12    | 15            | 5             | ArtSupplyCo  | 2024‑09‑10     | $150            | No             |
| Acrylic Paint Set | 8           | 3             | ColorMakers  | 2024‑08‑22     | $80             | **Yes**        |
| Wooden Frame    | 20            | 10            | FrameWorks   | 2024‑07‑30     | $200            | No             |
| Packaging Boxes | 50            | 20            | EcoPack      | 2024‑09‑01     | $50             | No             |

### Property Types  
- **Current Stock** – *Number*  
- **Reorder Point** – *Number*  
- **Value (USD)** – *Formula* (`prop("Current Stock") * prop("Cost per Unit")`)  
- **Low‑Stock?** – *Formula* (`if(prop("Current Stock") <= prop("Reorder Point"), "Yes", "No")`) – used for native alerts.  

> **Tip:** Create a **Rollup** in the Finance page that sums **Value (USD)** across all items.

---

## 💰 Finance Tracker (Advanced)  

| Product                | Units Sold | Revenue (USD) | Cost per Unit (USD) | Tax (USD) | Shipping Cost (USD) | **Ad Spend (USD)** | **Platform Fee (USD)** | **Profit (USD)** | **Multi‑Currency** | **Converted Profit (USD)** |
|------------------------|------------|---------------|---------------------|-----------|----------------------|--------------------|------------------------|------------------|--------------------|----------------------------|
| Floral Meadow Print    | 12         | $300          | $12                   | $24       | $5                   | $0                 | $15                    | $238             | USD                | $238                       |
| Sunset Landscape       | 7          | $210          | $10                   | $16.80    | $4                   | $0                 | $10.50                 | $168.69          | USD                | $168.69                    |
| Ocean Breeze           | 4          | $112          | $9                    | $8.96     | $3                   | $0                 | $5.60                  | $84.44           | USD                | $84.44                     |
| Vintage Cottage        | 5          | $175          | $14                   | $14       | $6                   | $0                 | $8.75                  | $133.25          | USD                | $133.25                    |

### Property Types & Formulas  
- **Revenue (USD)** – `prop("Price") * prop("Units Sold")`  
- **Tax (USD)** – `prop("Revenue (USD)") * 0.08`  
- **Shipping Cost (USD)** – `prop("Units Sold") * 0.75`  
- **Platform Fee (USD)** – `prop("Revenue (USD)") * 0.05`  
- **Ad Spend (USD)** – *Number* (manual entry or linked from **Ad‑Spend Tracker**)  
- **Profit (USD)** – `prop("Revenue (USD)") - (prop("Cost per Unit") * prop("Units Sold")) - prop("Tax (USD)") - prop("Shipping Cost (USD)") - prop("Platform Fee (USD)") - prop("Ad Spend (USD)")`  
- **Multi‑Currency** – *Select* (USD, EUR, GBP)  
- **Currency Rate** – *Rollup* from **Currency Rates** database (`prop("Rate")`)  
- **Converted Profit (USD)** – `prop("Profit (USD)") * prop("Currency Rate")`  

> **Tip:** Add a **Rollup** on the Dashboard that shows **Total Revenue (USD)**, **Total Profit (USD)**, **Profit Margin %**, and **Monthly Burn** (Ad Spend + Platform Fee).

---

## 🌐 Marketplace Integration  

| Platform | API Token | Sync Status | Last Sync | **Sales Sync** |
|----------|-----------|-------------|-----------|----------------|
| Etsy     | `{{ETSY_TOKEN}}` | Auto‑Sync   | 2024‑09‑28 | Rollup of **Units Sold** |
| Shopify  | `{{SHOPIFY_TOKEN}}` | Manual     | 2024‑09‑20 | Rollup of **Revenue** |
| Amazon   | `{{AMAZON_TOKEN}}` | Auto‑Sync   | 2024‑09‑15 | Rollup of **Units Sold** |

### Property Types  
- **API Token** – *Text* (store encrypted token)  
- **Sync Status** – *Select* (Auto‑Sync, Manual)  
- **Last Sync** – *Date*  
- **Sales Sync** – *Relation* → **Finance Tracker** (auto‑populates Units Sold, Revenue)  

> **Tip:** Use Notion’s **Webhook** integration or a third‑party service (e.g., Zapier) to push sales data into this table; the rollup will keep finance figures up‑to‑date.

---

## 📊 Ad‑Spend & ROI Tracker  

| Campaign | Platform | Spend (USD) | Impressions | Clicks | **Revenue Attributed (USD)** | **ROI %** |
|----------|----------|-------------|-------------|--------|------------------------------|-----------|
| Spring Launch | Instagram | $50 | 12,000 | 300 | $250 | `round((prop("Revenue Attributed") - prop("Spend")) / prop("Spend") * 100, 1)` |
| Easter Promo | Pinterest | $30 | 8,500 | 210 | $180 | `round((prop("Revenue Attributed") - prop("Spend")) / prop("Spend") * 100, 1)` |

### Property Types  
- **Spend (USD)** – *Number*  
- **Revenue Attributed (USD)** – *Rollup* from **Finance Tracker** (linked by campaign ID)  
- **ROI %** – *Formula* (`round((prop("Revenue Attributed (USD)") - prop("Spend (USD)")) / prop("Spend (USD)") * 100, 1)`)  

> **Tip:** Add a **Rollup** on the Dashboard for **Total Ad Spend** and **Average ROI %**.

---

## 📅 Seasonal Content Calendar (Dynamic & Recurring)  

| Week | Platform   | Content Theme   | Status      | Scheduled Date | **Recurring** | **Hashtag Set** | **Next Action** |
|------|------------|-----------------|-------------|----------------|---------------|-----------------|-----------------|
| Week 1 | Instagram | Spring Florals | Planned | 2024‑10‑06 | **Yearly** | `{{Hashtag Suggestions}}` | Create post |
| Week 2 | Pinterest | Easter Decor   | Draft     | 2024‑10‑13 | **Never**     | `{{Hashtag Suggestions}}` | Upload pins |
| Week 3 | Instagram | Summer Garden  | In Progress| 2024‑10‑20 | **Yearly**    | `{{Hashtag Suggestions}}` | Shoot assets |

### Property Types  
- **Scheduled Date** – *Date* (enables Calendar view)  
- **Recurring** – *Select* (Never, Weekly, Monthly, Yearly) – drives auto‑repeat in Calendar view.  
- **Hashtag Set** – *Relation* → **Hashtag Library** (auto‑suggests relevant tags).  
- **Next Action** – *Select* (Create post, Upload pins, Shoot assets).  

#### Hashtag Library (linked via Relation)  
| Tag | Category | Popularity |
|-----|----------|------------|
| #cottagecore | wall art | High |
| #springdecor | seasonal | Medium |
| #homedecor | interior | High |

> **Dynamic Views** (create each from the table):  
- **Calendar Heatmap** – *Calendar* view grouped by **Scheduled Date**; enable “Show as heatmap”.  
- **Kanban Swimlanes** – *Kanban* view grouped by **Status**; swimlanes by **Platform**.  
- **Table with Filters** – *Table* view filtered to `Status = Planned` or `Platform = Instagram`.  
- **Gallery** – *Gallery* view showing **Content Theme** cover images.  

> **Tip:** Enable **Recurring** = “Yearly” to automatically duplicate rows each year; the **Hashtag Set** relation will pull fresh suggestions from the **Hashtag Library**.

---

## 📱 Social Media Scheduler (Integration Ready)  

| Platform | API Token | Scheduler | Content ID | Status | Last Published | **Reminder** |
|----------|-----------|-----------|------------|--------|----------------|--------------|
| Instagram | `{{IG_TOKEN}}` | Later | `{{Content ID}}` | Scheduled | 2024‑09‑30 | Email 1 h before |
| Pinterest | `{{PIN_TOKEN}}` | Buffer | `{{Content ID}}` | Draft | – | SMS via Twilio (if needed) |

### Property Types  
- **API Token** – *Text* (store encrypted token)  
- **Scheduler** – *Select* (Later, Buffer, Hootsuite)  
- **Content ID** – *Relation* → **Seasonal Content Calendar**  
- **Status** – *Select* (Draft, Scheduled, Published)  
- **Last Published** – *Date* (auto‑filled when status → Published)  
- **Reminder** – *Checkbox* + *Formula* (`if(prop("Status") == "Scheduled", "Send Email", "–")`) – triggers Notion reminder/email.  

> **Automation** – Use Notion’s native **Reminder** to send an email to the page owner 1 hour before publishing; optionally integrate with Twilio for SMS.

---

## 📊 Premium Dashboard (All‑In‑One)  

Create a page called **Dashboard** and embed the following linked views:

1. **Revenue & Profit Trend** – *Line chart* (Rollup of **Profit (USD)** from Finance Tracker, grouped by month).  
2. **Stock Heatmap** – *Calendar* view of **Inventory Tracker** filtered by **Low‑Stock? = Yes**; apply red‑orange color scale.  
3. **Top Performing Products** – *Table* view sorted by **Profit (USD)** descending, limited to 5 rows.  
4. **Content Calendar Overview** – *Board* view grouped by **Platform**, showing **Status** counts.  
5. **Financial Summary** – *Text* block with rollup formulas:  
   - **Total Revenue (USD)** – `sum(prop("Revenue (USD)"))`  
   - **Total Profit (USD)** – `sum(prop("Profit (USD)"))`  
   - **Profit Margin %** – `round((prop("Total Profit") / prop("Total Revenue")) * 100, 1)`  
   - **Profit Margin Bar** – *Progress* property (`format(prop("Profit Margin %"), "0%")`) – visual bar.  
   - **Monthly Burn** – `sum(prop("Ad Spend (USD)")) + sum(prop("Platform Fee (USD)"))`  

### Native Chart Components  
- Use Notion’s **Progress** property to render a **Profit Margin Bar** directly in the table.  
- For line charts, embed a **Chart.js** JSON snippet via an **Embed** block (hosted on a private gist).  

> **Tip:** All charts update automatically as underlying rollups refresh.

---

## ⚙️ Automation & Low‑Stock Alerts (Built‑In)  

1. **Low‑Stock Alert Database** – a hidden table that captures rows where **Low‑Stock? = Yes**.  
   - **Alert** – *Checkbox* (checked automatically by a **Formula** in **Inventory Tracker**: `prop("Low‑Stock?") == "Yes"`).  
   - **Notify** – *Formula* (`if(prop("Alert"), "🚨 Low Stock: " + prop("Item"), "")`) – appears in the **Dashboard** as a **Text** block.  

2. **Native Notification** – set a **Reminder** on each **Alert** row:  
   - **Reminder Date** – `now() + 0 days` (immediate).  
   - **Reminder Type** – *Email* to the workspace owner (Notion sends an email when a reminder triggers).  

3. **SMS Fallback** – optional integration with **Twilio** via a **Webhook** that reads the **Alert** table and sends a text message.  

> **Tip:** Store API credentials (e.g., Twilio SID) in a private **Notion Secrets** page and reference them in the webhook URL.

---

## 📚 Onboarding & Troubleshooting  

### Step‑by‑Step Setup (with screenshots)  
1. **Import the template** – `Copy markdown → Notion → Import → Markdown`.  
   ![Step 1](screenshots/import.png)  
2. **Create Relations** – link **Product Kanban** → **Inventory Tracker** → **Finance Tracker** → **Marketplace Integration**.  
   ![Step 2](screenshots/relations.png)  
3. **Add Formulas** – open each database, paste the listed formulas (copy/paste).  
   ![Step 3](screenshots/formulas.png)  
4. **Configure Marketplace Sync** – enter API tokens, set **Sync Status**, and enable **Sales Sync** rollups.  
   ![Step 4](screenshots/marketplace.png)  
5. **Set Up Recurring Content** – toggle **Recurring** = “Yearly” for seasonal posts; link **Hashtag Set** to **Hashtag Library**.  
   ![Step 5](screenshots/recurring.png)  
6. **Activate Alerts** – check the **Alert** checkbox on low‑stock rows; Notion will email you instantly.  
   ![Step 6](screenshots/alerts.png)  

### Troubleshooting Guide  

| Issue | Likely Cause | Fix |
|-------|--------------|-----|
| **Low‑Stock notifications not firing** | Alert checkbox not checked or reminder disabled | Verify **Alert** formula returns `true`; ensure reminder is set to “Email”. |
| **Currency conversion appears static** | **Currency Rates** table not updated | Manually edit the rate or set up an external API sync (e.g., via Zapier). |
| **Marketplace data not updating** | Sync Status set to “Manual” or token expired | Switch to “Auto‑Sync” and re‑enter a valid API token. |
| **Profit numbers look off** | Ad Spend or Platform Fee missing | Fill in **Ad Spend (USD)** and confirm **Platform Fee** uses 5 % of revenue. |
| **Hashtag suggestions empty** | **Hashtag Library** empty | Add relevant tags; they will auto‑populate the **Hashtag Set** relation. |

---  

*All tables, formulas, and views are fully linked and will stay in sync as you add new products, sales, or content. The template now delivers native multi‑currency rollups, marketplace auto‑sync, ad‑spend & ROI tracking, built‑in low‑stock alerts, corrected finance math, input‑safe fields, native chart visualizations, and recurring content automation — making it the most complete, premium Notion dashboard for cottage‑style wall‑art sellers.*