{
  "slug": "macro-split",
  "title": "Macro Split Calculator",
  "heading": "Macronutrient Split Calculator",
  "category": "fitness-health",
  "url": "https://www.revenuelab.fyi/toolbox/macro-split",
  "summary": "Grams of protein, carbs, and fat for your calorie target.",
  "description": "Set protein first from body weight, fat second for hormone health at 20–30% of calories, and let carbohydrate fill the rest — that ordering matters more than the exact ratio.",
  "formula": "Protein and carbs at 4 cal/g, fat at 9 cal/g, summing to your calorie target.",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=macro-split",
  "inputs": [
    {
      "id": "calories",
      "label": "Daily calories",
      "kind": "number",
      "hint": null,
      "default": 2400,
      "unit": null,
      "min": 1000,
      "max": 6000
    },
    {
      "id": "split",
      "label": "Split",
      "kind": "select",
      "hint": null,
      "default": "balanced",
      "options": [
        {
          "value": "balanced",
          "label": "Balanced 30/40/30"
        },
        {
          "value": "highprotein",
          "label": "High protein 40/35/25"
        },
        {
          "value": "lowcarb",
          "label": "Low carb 35/20/45"
        },
        {
          "value": "endurance",
          "label": "Endurance 25/55/20"
        },
        {
          "value": "keto",
          "label": "Keto 25/5/70"
        }
      ]
    },
    {
      "id": "meals",
      "label": "Meals per day",
      "kind": "number",
      "hint": null,
      "default": 4,
      "unit": null,
      "min": 1,
      "max": 8
    }
  ],
  "outputs": [
    {
      "id": "protein",
      "label": "Protein per day (g)",
      "format": "decimal",
      "hint": null,
      "primary": true
    },
    {
      "id": "carbs",
      "label": "Carbs per day (g)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "fat",
      "label": "Fat per day (g)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "proteinMeal",
      "label": "Protein per meal (g)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "carbMeal",
      "label": "Carbs per meal (g)",
      "format": "decimal",
      "hint": null,
      "primary": false
    },
    {
      "id": "fatMeal",
      "label": "Fat per meal (g)",
      "format": "decimal",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Daily calories: 2400",
      "Split: Balanced 30/40/30",
      "Meals per day: 4"
    ],
    "outputs": [
      "Protein per day (g): 180",
      "Carbs per day (g): 240",
      "Fat per day (g): 80",
      "Protein per meal (g): 45",
      "Carbs per meal (g): 60",
      "Fat per meal (g): 20"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter daily calories.",
      "Enter split.",
      "Enter meals per day.",
      "Read your protein per day (g) on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "calories": 1450,
        "split": "balanced",
        "meals": 2
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "calories": 2400,
        "split": "balanced",
        "meals": 4
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "calories": 3850,
        "split": "balanced",
        "meals": 6
      }
    }
  ],
  "limitations": [
    "Population formulas describe averages; individual bodies vary, especially at the extremes of height, age, or muscle mass.",
    "Results do not account for medical conditions, medication, or pregnancy.",
    "Use this as a directional reference, not a diagnosis — talk to a clinician before acting on it."
  ],
  "faq": [
    {
      "q": "How does the macronutrient split calculator work?",
      "a": "Set protein first from body weight, fat second for hormone health at 20–30% of calories, and let carbohydrate fill the rest — that ordering matters more than the exact ratio. The underlying maths is: Protein and carbs at 4 cal/g, fat at 9 cal/g, summing to your calorie target."
    },
    {
      "q": "What do I need to enter?",
      "a": "3 values: daily calories, split, and meals per day. Each field starts with a sensible default, so you can change one number at a time and watch the result move."
    },
    {
      "q": "What does the protein per day (g) result mean?",
      "a": "It is returned as a decimal number and updates live as you edit the inputs, so you can compare two or three versions of a scenario in a few seconds."
    },
    {
      "q": "Is this calculator free, and do I need an account?",
      "a": "Yes, it's free, and no account is required. Nothing you type is stored on our servers — the maths runs entirely in your browser."
    },
    {
      "q": "How accurate is the result?",
      "a": "It applies the standard formula exactly, so the arithmetic is precise. Population formulas describe averages; individual bodies vary, especially at the extremes of height, age, or muscle mass."
    },
    {
      "q": "Who is this tool for?",
      "a": "It's built for anyone tracking a health or training target and wanting the standard formula applied correctly, without a signup or an app."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/protein-intake",
    "https://www.revenuelab.fyi/toolbox/calorie-deficit",
    "https://www.revenuelab.fyi/toolbox/water-intake"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Macro Split Calculator (https://www.revenuelab.fyi/toolbox/macro-split)"
}