All Posts

    How to Structure Your Notion Fitness Database for the Best Analytics

    Updated: April 6, 2026

    How to Structure Your Notion Fitness Database for the Best Analytics main image

    NotionStats can generate fitness analytics like training volume trends, exercise frequency, top weights, estimated 1RM progress, and body metric tracking — as long as your Notion databases have the right columns.

    If you want to skip setup, you can duplicate my ready-to-use Notion Fitness templates and customize them.

    Table of Contents


    Schema in 60 Seconds (Copy This)

    Create one Notion database named Workout Log with:

    • Required
      • Date: Date
      • Exercise: Select
      • Weight: Number
      • Reps: Number
      • Muscle Group: Select
      • Equipment: Select
    • Recommended
      • Volume: Number (or Formula returning number)
      • RPE: Number (1–10)
      • Split: Select (Push/Pull/Legs/etc.)
      • Duration: Number (minutes)

    Body Metrics (optional, but supported)

    Create a second Notion database named Body Metrics with:

    • Date: Date
    • One or more metric columns as Number:
      • Weight, Waist, Arms, Body Fat, Height, etc.

    Step 1: Create the “Workout Log” Database

    In Notion, create a new database called Workout Log.

    • Add a Table view for logging sets.
    • (Optional) Add a Calendar view using Date to browse sessions.

    Step 2: Add the Core Workout Properties (Must-Have)

    These columns make sure NotionStats can group workouts over time and by exercise. Then you can compute Volume from Weight × Reps for volume-based charts.

    Date (Date)

    • Type: Date
    • What it means: workout date (or session date)

    Exercise (Select)

    • Type: Select
    • Examples: Bench Press, Squat, Deadlift, Pull-up, Row, Shoulder Press

    Use Select (not text) so exercise names don’t split due to typos.

    • Type: Number (or Formula)
    • Meaning: training volume per row.

    Best practice: store Weight and Reps, then compute Volume as a formula:

    • Volume = Weight × Reps

    If you prefer, you can also enter Volume directly as a Number column.


    Step 3: Add Strength + Intensity Properties (Weight, Reps, 1RM, RPE)

    These columns enable strength PR charts and progression analytics.

    Weight (Number)

    • Type: Number
    • Examples: 60, 100, 225

    Reps (Number)

    • Type: Number
    • Examples: 5, 8, 12

    1RM Estimate (Number or Formula) (optional)

    • Type: Number (or Formula)
    • Purpose: enables 1RM progression charts.

    If you want to compute it automatically, you can use a formula such as the Epley estimate:

    • (1RM \approx Weight \times (1 + Reps/30))

    RPE (Number)

    • Type: Number
    • Meaning: rate of perceived exertion (1–10)

    Step 4: Add Training Context (Muscle Group, Equipment, Split, Duration)

    These columns unlock breakdown charts (volume by muscle group/equipment) and context insights.

    Muscle Group (Select)

    • Type: Select
    • Examples: Chest, Back, Legs, Shoulders, Arms, Core

    Equipment (Select)

    • Type: Select
    • Examples: Barbell, Dumbbell, Machine, Cable, Bodyweight

    Split (Select)

    • Type: Select
    • Examples: Push, Pull, Legs, Upper, Lower, Full Body

    Duration (Number) (minutes)

    • Type: Number
    • Meaning: session length in minutes (optional)

    Step 5: Optional “Body Metrics” Database (Weight, Waist, Body Fat)

    If you want body composition charts and summary cards, create a second database called Body Metrics.

    Date (Date)

    • Type: Date
    • Meaning: measurement date

    Metric columns (Number)

    Add any metrics you care about as Number columns:

    • Weight
    • Waist
    • Arms
    • Body Fat
    • Height

    NotionStats can plot any of these “over time” and compute changes as long as they’re numeric and date-stamped.


    Step 6: Map These Columns in NotionStats

    When creating fitness charts in NotionStats, map columns like this:

    Workout charts

    • DateDate
    • ExerciseExercise
    • VolumeVolume
    • WeightWeight (for weight/PR charts)
    • RPERPE (for intensity trend charts)
    • Muscle Group / Equipment / Split → map as requested by the chart

    Body metric charts (if you created a Body Metrics DB)

    • DateDate
    • Metric → the column you want to chart (Weight/Waist/Arms/etc.)

    If you’re new to NotionStats setup, start here: Guide to adding analytics to your Notion.


    Troubleshooting / FAQ

    My volume charts are empty

    Make sure:

    • Every workout row has a valid Date
    • Your Volume column is numeric (Number or Formula returning number)

    My “Exercise Frequency” chart is messy

    Use Exercise as a Select property and avoid near-duplicates (e.g., “Bench Press” vs “Benchpress”).

    Estimated 1RM isn’t showing progression

    You need a numeric 1RM Estimate column (Number or Formula) and a valid Date. If you don’t store 1RM explicitly, NotionStats can still estimate it from Weight + Reps in some stats — but charts work best with an explicit 1RM column.