{
  "$comment": "Machine-readable companion to https://valem.run/calculators/australia/self-employed. Formula, inputs, outputs, engine-verified test vectors, cited sources and the re-runnable Valem ModelSpec behind the page.",
  "url": "https://valem.run/calculators/australia/self-employed",
  "dataUrl": "https://valem.run/calculators/australia/self-employed.json",
  "license": {
    "name": "CC BY 4.0",
    "url": "https://creativecommons.org/licenses/by/4.0/",
    "attribution": "Australia sole trader model by Valem (https://valem.run/calculators/australia/self-employed), CC BY 4.0.",
    "note": "Covers the model — the expression of each rule and the arrangement of the catalog. The rates and thresholds themselves are law and are not licensed by anyone; the cited sources are where they come from."
  },
  "verificationUrl": "https://valem.run/calculators/australia/self-employed/verify",
  "country": "australia",
  "countryName": "Australia",
  "formula": "self-employed",
  "formulaName": "Sole trader",
  "title": "Sole Trader Tax Calculator Australia",
  "answer": "Your net income as an Australian sole trader is profit minus income tax at the ordinary individual rates — nothing on the first 18,200 AUD — plus the 2% Medicare levy.",
  "lang": "en",
  "currency": "AUD",
  "taxYear": "2026",
  "verification": {
    "claim": "shape-only",
    "statement": "The rates in this model are illustrative. Its 3 self-test cases confirm the engine reproduces the shape of the charge, but the schedule is not the official one, so the amount will not match a real bill. The cited sources name the document that would replace it.",
    "selfTestCases": 3,
    "ratesAreIllustrative": true,
    "sourcesCheckedOn": "2026-08-22"
  },
  "sources": [
    {
      "label": "ATO — Individual income tax rates",
      "url": "https://www.ato.gov.au/tax-rates-and-codes/tax-rates-australian-residents",
      "checked": "2026-08-22"
    },
    {
      "label": "Sole trader tax in Australia 2025–26: rates, thresholds and the Medicare levy",
      "url": "https://www.xero.com/au/guides/sole-trader-tax/",
      "checked": "2026-08-22"
    }
  ],
  "terminalOutput": "netIncome",
  "inputs": [
    {
      "name": "annualProfit",
      "type": "number",
      "label": "Annual profit after expenses (AUD)",
      "minimum": 0
    }
  ],
  "outputs": [
    {
      "name": "incomeTax",
      "type": "number",
      "label": "Income tax",
      "format": "number",
      "formula": "($p := annualProfit; $round($const.rate2 * $max([0, $min([$p, $const.band2]) - $const.freeThreshold]) + $const.rate3 * $max([0, $min([$p, $const.band3]) - $const.band2]) + $const.rate4 * $max([0, $min([$p, $const.band4]) - $const.band3]) + $const.rate5 * $max([0, $p - $const.band4]), 2))"
    },
    {
      "name": "medicare",
      "type": "number",
      "label": "Medicare levy (2%)",
      "format": "number",
      "formula": "$round(annualProfit * $const.medicareLevy, 2)"
    },
    {
      "name": "netIncome",
      "type": "number",
      "label": "Net income / year",
      "format": "number",
      "formula": "$round($max([0, annualProfit - incomeTax - medicare]), 2)"
    }
  ],
  "testCases": [
    {
      "description": "90,000 AUD profit — a typical full-time sole trader",
      "given": {
        "annualProfit": 90000
      },
      "expect": {
        "incomeTax": 17788,
        "medicare": 1800,
        "netIncome": 70412
      }
    },
    {
      "description": "30,000 AUD profit — part-time, second band only",
      "given": {
        "annualProfit": 30000
      },
      "expect": {
        "incomeTax": 1888,
        "medicare": 600,
        "netIncome": 27512
      }
    },
    {
      "description": "200,000 AUD profit — into the top band",
      "given": {
        "annualProfit": 200000
      },
      "expect": {
        "incomeTax": 56138,
        "medicare": 4000,
        "netIncome": 139862
      }
    }
  ],
  "spec": {
    "id": "self-employed-australia",
    "version": "1.0.0",
    "schema": {
      "type": "object",
      "properties": {
        "annualProfit": {
          "type": "number",
          "minimum": 0
        },
        "incomeTax": {
          "type": "number",
          "readOnly": true
        },
        "medicare": {
          "type": "number",
          "readOnly": true
        },
        "netIncome": {
          "type": "number",
          "readOnly": true
        }
      },
      "required": [
        "annualProfit"
      ]
    },
    "constants": {
      "freeThreshold": 18200,
      "band2": 45000,
      "band3": 135000,
      "band4": 190000,
      "rate2": 0.16,
      "rate3": 0.3,
      "rate4": 0.37,
      "rate5": 0.45,
      "medicareLevy": 0.02
    },
    "defaultValues": [
      {
        "path": "$",
        "expr": "{ \"annualProfit\": 90000 }"
      }
    ],
    "derivations": [
      {
        "path": "$.incomeTax",
        "expr": "($p := annualProfit; $round($const.rate2 * $max([0, $min([$p, $const.band2]) - $const.freeThreshold]) + $const.rate3 * $max([0, $min([$p, $const.band3]) - $const.band2]) + $const.rate4 * $max([0, $min([$p, $const.band4]) - $const.band3]) + $const.rate5 * $max([0, $p - $const.band4]), 2))"
      },
      {
        "path": "$.medicare",
        "expr": "$round(annualProfit * $const.medicareLevy, 2)"
      },
      {
        "path": "$.netIncome",
        "expr": "$round($max([0, annualProfit - incomeTax - medicare]), 2)"
      }
    ],
    "constraints": [],
    "viewDefinition": {
      "renderer": "builtin",
      "defaultView": "main",
      "views": [
        {
          "id": "main",
          "label": "Self-employed net income",
          "layout": "vertical",
          "components": [
            {
              "id": "illustrativeNotice",
              "type": "alert",
              "variant": "warning",
              "label": "What this model leaves out",
              "text": "'A sole trader is taxed at exactly the same individual rates as an employee — there is no separate business rate — so the whole story is the threshold and the levy. What this model leaves out is every offset: the low income tax offset (up to 700 AUD) and the small business income tax offset (up to 1,000 AUD) both reduce the bill and neither is modelled, so the real figure is higher than shown. The Medicare levy is applied flat here; it actually shades in from zero across a low-income range. Deductible personal super contributions are not modelled either. Not tax advice.'"
            },
            {
              "id": "inputField",
              "type": "numericField",
              "label": "Annual profit after expenses (AUD)",
              "bind": "$.annualProfit",
              "placeholder": "90000"
            },
            {
              "id": "tiles",
              "type": "group",
              "layout": "horizontal",
              "components": [
                {
                  "id": "netIncomeTile",
                  "type": "statTile",
                  "label": "Net income / year",
                  "bind": "$.netIncome",
                  "format": "number"
                },
                {
                  "id": "incomeTaxTile",
                  "type": "statTile",
                  "label": "Income tax",
                  "bind": "$.incomeTax",
                  "format": "number"
                },
                {
                  "id": "medicareTile",
                  "type": "statTile",
                  "label": "Medicare levy (2%)",
                  "bind": "$.medicare",
                  "format": "number"
                }
              ]
            },
            {
              "id": "sources",
              "type": "sourceList",
              "label": "Sources",
              "items": [
                {
                  "label": "ATO — Individual income tax rates",
                  "url": "https://www.ato.gov.au/tax-rates-and-codes/tax-rates-australian-residents",
                  "date": "2026-08-22"
                },
                {
                  "label": "Sole trader tax in Australia 2025–26: rates, thresholds and the Medicare levy",
                  "url": "https://www.xero.com/au/guides/sole-trader-tax/",
                  "date": "2026-08-22"
                }
              ]
            }
          ]
        }
      ]
    },
    "tests": [
      {
        "description": "90,000 AUD profit — a typical full-time sole trader",
        "given": {
          "$.annualProfit": 90000
        },
        "expect": {
          "$.incomeTax": 17788,
          "$.medicare": 1800,
          "$.netIncome": 70412
        }
      },
      {
        "description": "30,000 AUD profit — part-time, second band only",
        "given": {
          "$.annualProfit": 30000
        },
        "expect": {
          "$.incomeTax": 1888,
          "$.medicare": 600,
          "$.netIncome": 27512
        }
      },
      {
        "description": "200,000 AUD profit — into the top band",
        "given": {
          "$.annualProfit": 200000
        },
        "expect": {
          "$.incomeTax": 56138,
          "$.medicare": 4000,
          "$.netIncome": 139862
        }
      }
    ]
  }
}
