{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "generator": "https://python-choigosu.com",
  "kind": "calculator",
  "slug": "yeoncha",
  "registry": "C-23",
  "name": "연차 계산기",
  "tagline": "입사일과 마지막 근무일로 생긴 연차 일수와 남은 연차를 돈으로 받는 연차수당까지 바로 나옵니다",
  "url": "https://python-choigosu.com/yeoncha/",
  "computation": "client-side",
  "license": "저작권 보호 대상 아님(법령)",
  "freshness": {
    "source": "고용노동부 (근로기준법)",
    "sourceUrl": "https://www.law.go.kr/법령/근로기준법",
    "asOf": "2026년 현행 근로기준법",
    "fetchedAt": "2026-10-20T01:41:03.875Z",
    "count": 3,
    "stale": false
  },
  "dataset": {
    "id": "annual-leave-2026",
    "name": "연차 유급휴가 규칙 (근로기준법, 2026)",
    "url": "https://python-choigosu.com/data/annual-leave-2026/"
  },
  "input": {
    "type": "object",
    "x-queryString": "https://python-choigosu.com/yeoncha/?<key>=<value>",
    "properties": {
      "joined": {
        "title": "입사일",
        "x-widget": "날짜",
        "type": "integer",
        "minimum": 19600101,
        "maximum": 20991231,
        "default": 20230102,
        "x-format": "YYYYMMDD"
      },
      "last": {
        "title": "마지막 근무일 (다니는 중이면 오늘)",
        "x-widget": "날짜",
        "description": "실제로 일한 마지막 날입니다. 연차는 1년(1년 전에는 1개월)을 마친 다음 날 근로관계가 있어야 생기므로 하루 차이로 일수가 달라질 수 있습니다.",
        "type": "integer",
        "minimum": 19600101,
        "maximum": 20991231,
        "default": 20260302,
        "x-format": "YYYYMMDD"
      },
      "wage": {
        "title": "월 통상임금 (세전)",
        "x-widget": "금액(원)",
        "description": "기본급과 매달 정해서 받는 수당을 더한 세전 금액입니다. 연장근로수당이나 성과급처럼 달마다 달라지는 돈은 넣지 않습니다.",
        "type": "integer",
        "minimum": 0,
        "maximum": 100000000,
        "default": 3000000
      },
      "used": {
        "title": "이번 연차 기간에 이미 쓴 연차",
        "x-widget": "개수",
        "description": "지금 쓸 수 있는 연차 가운데 이미 쓴 일수입니다. 반차는 반나절로 세어 두 번을 하루로 넣습니다.",
        "type": "integer",
        "minimum": 0,
        "maximum": 25,
        "multipleOf": 1,
        "default": 0
      }
    },
    "required": [
      "joined",
      "last",
      "wage"
    ],
    "additionalProperties": false
  },
  "output": {
    "headline": {
      "key": "pay",
      "label": "남은 연차를 돈으로 받는 연차수당",
      "format": "won"
    },
    "rows": [
      {
        "key": "current",
        "label": "지금 쓸 수 있는 연차 일수",
        "format": "num"
      },
      {
        "key": "remain",
        "label": "그 가운데 남은 일수",
        "format": "num"
      },
      {
        "key": "daily",
        "label": "1일 통상임금",
        "format": "won",
        "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
      },
      {
        "key": "serviceYears",
        "label": "만 근속 연수",
        "format": "num",
        "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
      },
      {
        "key": "monthly",
        "label": "1년이 되기 전 매달 생긴 연차",
        "format": "num",
        "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
      },
      {
        "key": "totalEver",
        "label": "입사 뒤 생긴 연차 모두",
        "format": "num"
      },
      {
        "key": "toNext",
        "label": "다음 연차가 생기기까지 더 다닐 날",
        "format": "num"
      },
      {
        "key": "nextAdd",
        "label": "그날 새로 생기는 연차 일수",
        "format": "num"
      },
      {
        "key": "serviceDays",
        "label": "재직일수",
        "format": "num",
        "note": "입사일부터 마지막 근무일까지"
      }
    ]
  },
  "scenarios": [
    {
      "label": "일곱 달 일하고 퇴사 (월 통상임금 250만원)",
      "note": "일곱째 달 개근분 연차는 그 달을 마친 다음 날 생기는데 그날 근로관계가 없어 6일만 생깁니다.",
      "input": {
        "joined": 20250101,
        "last": 20250731,
        "wage": 2500000,
        "used": 0
      },
      "url": "https://python-choigosu.com/yeoncha/?joined=20250101&last=20250731&wage=2500000",
      "headline": {
        "key": "pay",
        "label": "남은 연차를 돈으로 받는 연차수당",
        "text": "574,158원",
        "value": 574158
      },
      "rows": [
        {
          "key": "current",
          "label": "지금 쓸 수 있는 연차 일수",
          "text": "6",
          "value": 6,
          "note": "1년이 되기 전이라 1개월 개근마다 1일씩 생긴 연차입니다 (근로기준법 제60조 제2항)"
        },
        {
          "key": "remain",
          "label": "그 가운데 남은 일수",
          "text": "6",
          "value": 6
        },
        {
          "key": "daily",
          "label": "1일 통상임금",
          "text": "95,693원",
          "value": 95693,
          "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
        },
        {
          "key": "serviceYears",
          "label": "만 근속 연수",
          "text": "0",
          "value": 0,
          "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
        },
        {
          "key": "monthly",
          "label": "1년이 되기 전 매달 생긴 연차",
          "text": "6",
          "value": 6,
          "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
        },
        {
          "key": "totalEver",
          "label": "입사 뒤 생긴 연차 모두",
          "text": "6",
          "value": 6
        },
        {
          "key": "toNext",
          "label": "다음 연차가 생기기까지 더 다닐 날",
          "text": "1",
          "value": 1,
          "note": "마지막 근무일 다음 날까지 다니면 연차가 생깁니다. 1년(또는 1개월)을 마친 다음 날 근로관계가 있어야 연차가 생기기 때문입니다"
        },
        {
          "key": "nextAdd",
          "label": "그날 새로 생기는 연차 일수",
          "text": "1",
          "value": 1
        },
        {
          "key": "serviceDays",
          "label": "재직일수",
          "text": "212",
          "value": 212,
          "note": "입사일부터 마지막 근무일까지"
        }
      ]
    },
    {
      "label": "딱 1년 일하고 퇴사 (1년 계약직)",
      "note": "대법원 판결대로 1년 기간제 근로자에게는 최대 11일만 생기고 15일은 생기지 않습니다.",
      "input": {
        "joined": 20250101,
        "last": 20251231,
        "wage": 3000000,
        "used": 0
      },
      "url": "https://python-choigosu.com/yeoncha/?joined=20250101&last=20251231",
      "headline": {
        "key": "pay",
        "label": "남은 연차를 돈으로 받는 연차수당",
        "text": "1,263,152원",
        "value": 1263152
      },
      "rows": [
        {
          "key": "current",
          "label": "지금 쓸 수 있는 연차 일수",
          "text": "11",
          "value": 11,
          "note": "1년이 되기 전이라 1개월 개근마다 1일씩 생긴 연차입니다 (근로기준법 제60조 제2항)"
        },
        {
          "key": "remain",
          "label": "그 가운데 남은 일수",
          "text": "11",
          "value": 11
        },
        {
          "key": "daily",
          "label": "1일 통상임금",
          "text": "114,832원",
          "value": 114832,
          "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
        },
        {
          "key": "serviceYears",
          "label": "만 근속 연수",
          "text": "0",
          "value": 0,
          "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
        },
        {
          "key": "monthly",
          "label": "1년이 되기 전 매달 생긴 연차",
          "text": "11",
          "value": 11,
          "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
        },
        {
          "key": "totalEver",
          "label": "입사 뒤 생긴 연차 모두",
          "text": "11",
          "value": 11
        },
        {
          "key": "toNext",
          "label": "다음 연차가 생기기까지 더 다닐 날",
          "text": "1",
          "value": 1,
          "note": "마지막 근무일 다음 날까지 다니면 연차가 생깁니다. 1년(또는 1개월)을 마친 다음 날 근로관계가 있어야 연차가 생기기 때문입니다"
        },
        {
          "key": "nextAdd",
          "label": "그날 새로 생기는 연차 일수",
          "text": "15",
          "value": 15
        },
        {
          "key": "serviceDays",
          "label": "재직일수",
          "text": "365",
          "value": 365,
          "note": "입사일부터 마지막 근무일까지"
        }
      ]
    },
    {
      "label": "1년하고 하루 더 일하고 퇴사",
      "note": "1년을 마친 다음 날 근로관계가 있어 15일이 생깁니다. 첫해 11일과 합쳐 26일입니다.",
      "input": {
        "joined": 20250101,
        "last": 20260101,
        "wage": 3000000,
        "used": 0
      },
      "url": "https://python-choigosu.com/yeoncha/?joined=20250101&last=20260101",
      "headline": {
        "key": "pay",
        "label": "남은 연차를 돈으로 받는 연차수당",
        "text": "1,722,480원",
        "value": 1722480
      },
      "rows": [
        {
          "key": "current",
          "label": "지금 쓸 수 있는 연차 일수",
          "text": "15",
          "value": 15,
          "note": "1년간 80% 이상 출근하면 생기는 15일입니다 (제60조 제1항)"
        },
        {
          "key": "remain",
          "label": "그 가운데 남은 일수",
          "text": "15",
          "value": 15
        },
        {
          "key": "daily",
          "label": "1일 통상임금",
          "text": "114,832원",
          "value": 114832,
          "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
        },
        {
          "key": "serviceYears",
          "label": "만 근속 연수",
          "text": "1",
          "value": 1,
          "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
        },
        {
          "key": "monthly",
          "label": "1년이 되기 전 매달 생긴 연차",
          "text": "11",
          "value": 11,
          "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
        },
        {
          "key": "totalEver",
          "label": "입사 뒤 생긴 연차 모두",
          "text": "26",
          "value": 26
        },
        {
          "key": "toNext",
          "label": "다음 연차가 생기기까지 더 다닐 날",
          "text": "365",
          "value": 365
        },
        {
          "key": "nextAdd",
          "label": "그날 새로 생기는 연차 일수",
          "text": "15",
          "value": 15
        },
        {
          "key": "serviceDays",
          "label": "재직일수",
          "text": "366",
          "value": 366,
          "note": "입사일부터 마지막 근무일까지"
        }
      ]
    },
    {
      "label": "만 3년 하고 하루, 월 통상임금 400만원",
      "input": {
        "joined": 20230101,
        "last": 20260101,
        "wage": 4000000,
        "used": 0
      },
      "url": "https://python-choigosu.com/yeoncha/?joined=20230101&last=20260101&wage=4000000",
      "headline": {
        "key": "pay",
        "label": "남은 연차를 돈으로 받는 연차수당",
        "text": "2,449,760원",
        "value": 2449760
      },
      "rows": [
        {
          "key": "current",
          "label": "지금 쓸 수 있는 연차 일수",
          "text": "16",
          "value": 16,
          "note": "15일에 최초 1년을 넘는 근속 2년마다 1일을 더했습니다 (제60조 제4항)"
        },
        {
          "key": "remain",
          "label": "그 가운데 남은 일수",
          "text": "16",
          "value": 16
        },
        {
          "key": "daily",
          "label": "1일 통상임금",
          "text": "153,110원",
          "value": 153110,
          "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
        },
        {
          "key": "serviceYears",
          "label": "만 근속 연수",
          "text": "3",
          "value": 3,
          "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
        },
        {
          "key": "monthly",
          "label": "1년이 되기 전 매달 생긴 연차",
          "text": "11",
          "value": 11,
          "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
        },
        {
          "key": "totalEver",
          "label": "입사 뒤 생긴 연차 모두",
          "text": "57",
          "value": 57
        },
        {
          "key": "toNext",
          "label": "다음 연차가 생기기까지 더 다닐 날",
          "text": "365",
          "value": 365
        },
        {
          "key": "nextAdd",
          "label": "그날 새로 생기는 연차 일수",
          "text": "16",
          "value": 16
        },
        {
          "key": "serviceDays",
          "label": "재직일수",
          "text": "1,097",
          "value": 1097,
          "note": "입사일부터 마지막 근무일까지"
        }
      ]
    },
    {
      "label": "10년째 다니며 이번에 다섯 날 쓴 경우",
      "input": {
        "joined": 20160104,
        "last": 20260302,
        "wage": 5000000,
        "used": 5
      },
      "url": "https://python-choigosu.com/yeoncha/?joined=20160104&wage=5000000&used=5",
      "headline": {
        "key": "pay",
        "label": "남은 연차를 돈으로 받는 연차수당",
        "text": "2,679,418원",
        "value": 2679418
      },
      "rows": [
        {
          "key": "current",
          "label": "지금 쓸 수 있는 연차 일수",
          "text": "19",
          "value": 19,
          "note": "15일에 최초 1년을 넘는 근속 2년마다 1일을 더했습니다 (제60조 제4항)"
        },
        {
          "key": "remain",
          "label": "그 가운데 남은 일수",
          "text": "14",
          "value": 14
        },
        {
          "key": "daily",
          "label": "1일 통상임금",
          "text": "191,387원",
          "value": 191387,
          "note": "월 통상임금 ÷ 209시간 × 8시간 (근로기준법 시행령 제6조, 주 40시간 사업장)"
        },
        {
          "key": "serviceYears",
          "label": "만 근속 연수",
          "text": "10",
          "value": 10,
          "note": "1년을 채우고 그다음 날에도 다닌 해만 셉니다"
        },
        {
          "key": "monthly",
          "label": "1년이 되기 전 매달 생긴 연차",
          "text": "11",
          "value": 11,
          "note": "1개월 개근마다 1일, 최대 11일 (제60조 제2항)"
        },
        {
          "key": "totalEver",
          "label": "입사 뒤 생긴 연차 모두",
          "text": "181",
          "value": 181
        },
        {
          "key": "toNext",
          "label": "다음 연차가 생기기까지 더 다닐 날",
          "text": "308",
          "value": 308
        },
        {
          "key": "nextAdd",
          "label": "그날 새로 생기는 연차 일수",
          "text": "20",
          "value": 20
        },
        {
          "key": "serviceDays",
          "label": "재직일수",
          "text": "3,711",
          "value": 3711,
          "note": "입사일부터 마지막 근무일까지"
        }
      ]
    }
  ],
  "basis": [
    {
      "label": "연차 규칙과 법령 근거",
      "url": "https://python-choigosu.com/data/annual-leave-2026/"
    },
    {
      "label": "근로기준법 (국가법령정보센터)",
      "url": "https://www.law.go.kr/법령/근로기준법"
    }
  ],
  "caveats": [
    "1년간 80% 이상 출근했고 매달 개근했다고 보고 계산합니다. 출근율이 80%에 못 미친 해에는 15일 대신 개근한 달마다 1일이 생깁니다.",
    "입사일을 기준으로 셉니다. 회사가 회계연도(1월 1일) 기준으로 연차를 주면 해마다 일수가 다를 수 있지만, 퇴사할 때는 입사일 기준보다 적게 줄 수 없습니다.",
    "지금 연차 기간에 생긴 연차만 셉니다. 지난 기간에 쓰지 못한 연차와 연차 사용 촉진으로 사라진 연차는 셈하지 않습니다.",
    "주 40시간, 하루 8시간 일하는 근로자 기준입니다. 단시간 근로자는 소정근로시간에 비례해 시간 단위로 연차가 생깁니다. 상시 근로자 5명 미만 사업장에는 연차 규정이 적용되지 않습니다."
  ]
}
