시급을 월급으로 바꿨는데 생각한 금액과 다르거나, 월급을 시급으로 환산했더니 예상보다 낮게 나오는 경우가 있습니다. 이 계산기는 임금의 법적 성격을 판정하는 도구가 아니라, 사용자가 입력한 월 환산시간을 기준으로 두 금액을 산술 환산합니다. 먼저 계약서나 급여명세서에서 어떤 시간을 기준으로 삼았는지 확인해 보세요.
계산기에서 실제로 계산하는 것
계산기는 다음 두 값을 받습니다.
- 시급 또는 월급 중 하나 이상
- 월 환산시간
화면의 입력 제한도 함께 읽어야 합니다. 시급과 월급은 각각 min=1인 두 금액 입력이고, 월 환산시간도 min=1이며 입력 칸의 step=0.1은 0.1 단위 입력을 안내합니다. 다만 이 폼은 novalidate이고 제출 코드가 stepMismatch를 검사하지 않으므로, 0.1 간격이 아닌 더 세밀한 소수를 단지 step에 맞지 않는다는 이유로 거부하지는 않습니다. 월 환산시간의 기본 표시값은 209이지만, 화면은 이를 모든 사람에게 적용되는 기준으로 확정하지 않습니다. 시급과 월급 두 금액 칸을 모두 비워 제출하면 오류가 나며, 월 환산시간이 비어 있거나 숫자로 해석할 수 없거나 1보다 작은 값이어도 유효하지 않습니다. 따라서 시간만 209로 남겨 두고 금액을 모두 비운 경우도 오류이고, 금액을 하나 입력했더라도 시간을 비운 경우도 오류입니다.
시급을 입력하면 시급 × 월 환산시간을 계산하고, 월급을 입력하면 월급 ÷ 월 환산시간을 계산합니다. 두 결과 모두 원 단위에서 소수점 이하를 버립니다. 예를 들어 12,345원 × 160.5시간은 1,981,372.5원이므로 화면 결과는 1,981,372원입니다. 월급 2,500,000원 ÷ 209시간은 약 11,961.72원이므로 11,961원으로 표시됩니다.
시급과 월급을 둘 다 입력하면 한 방향만 선택되는 것이 아니라 두 결과가 모두 채워집니다. 시급만 입력하면 월급 기준 시급 환산 행은 “월급 미입력”입니다. 월급만 입력하면 시급 기준 월 환산 행은 “시급 미입력”입니다. 큰 주 결과 한 줄은 시급이 입력되어 있으면 월급 추정값을 우선합니다. 두 금액을 모두 입력해도 이 우선순위 때문에 월급 추정값이 큰 결과로 보이고, 아래 두 상세 행에는 두 독립 계산값이 각각 남습니다. 계산기는 두 입력의 일치 여부를 판정하거나 어느 한쪽을 덮어쓰지 않습니다.
여기서 Math.floor 방식의 버림은 이 계산기 모듈의 동작입니다. 실제 급여명세서가 다른 반올림 규칙을 쓰는지, 수당을 별도로 계산하는지는 회사의 산정 기준을 확인해야 합니다.
예제 1: 10,000원 × 209시간
가상의 입력값으로 시급 10,000원, 월 환산시간 209시간을 넣어 보겠습니다.
10,000 × 209 = 2,090,000
결과는 월 2,090,000원입니다. 이 예제에서 209시간은 계산을 보여 주기 위한 입력값입니다. 모든 근로자에게 적용되는 고정값이라고 해석하면 안 됩니다.
입력 가정은 시급 칸에 10000, 월급 칸은 비워 두고, 월 환산시간 칸에 209를 넣는 것입니다. 따라서 화면에는 시급 기준 월 환산값이 2,090,000원, 월급 기준 시급 환산은 월급 미입력으로 표시됩니다.
예제 2: 소수 시간 때문에 1원이 달라지는 경우
가상의 시급 12,345원과 월 환산시간 160.5시간을 입력하면 다음과 같습니다.
12,345 × 160.5 = 1,981,372.5
계산기는 소수점 이하를 버리므로 결과는 월 1,981,372원입니다. 계산 중간값을 반올림해 1,981,373원으로 적으면 계산기 결과와 1원 차이가 생깁니다. 비교할 때는 입력한 월 환산시간의 소수점과 결과 표시의 버림 규칙을 함께 보세요.
입력 가정은 시급 12345, 월급 미입력, 월 환산시간 160.5입니다. 160.5는 화면의 0.1 단위 입력 안내에 맞고 1보다 크므로 유효합니다. 이때 화면의 큰 주 결과는 시급이 입력되어 월 1,981,372원을 우선 표시하고, 상세 행에는 시급 기준 월 환산 1,981,372원, 월급 기준 시급 환산 월급 미입력이 표시됩니다. 만약 중간값을 일반 반올림하면 1,981,373원이지만, 그것은 이 계산기의 버림 결과가 아닙니다.
예제 3: 월급을 시급으로 거꾸로 환산하기
가상의 월급 2,500,000원과 월 환산시간 209시간을 입력하면 다음과 같습니다.
2,500,000 ÷ 209 = 11,961.722...
소수점 이하를 버린 결과는 시급 11,961원입니다. 다시 11,961원에 209시간을 곱하면 2,499,849원이 되어 원래 월급과 정확히 같지 않습니다. 이는 버림을 거친 환산값을 다시 역산했기 때문에 생기는 차이입니다. 환산 결과를 실제 임금명세서의 지급액과 동일한 금액으로 보지 마세요.
입력 가정은 월급 2500000, 시급 미입력, 월 환산시간 209입니다. 화면에는 시급 기준 월 환산이 시급 미입력, 월급 기준 시급 환산이 11,961원으로 표시됩니다. 원래 월급을 다시 맞추는 기능이 아니라, 월급을 시간으로 나눈 표시용 환산값이라는 점이 핵심입니다.
참고로 두 금액을 동시에 입력하는 경우에는 예를 들어 시급 10000, 월급 2500000, 월 환산시간 209를 넣으면 큰 주 결과는 월 환산 2,090,000원으로 표시되고, 상세 행에는 월 환산 2,090,000원과 시급 환산 11,961원이 각각 표시됩니다. 계산기는 두 입력이 일치하는지 판정하거나 어느 한쪽을 덮어쓰지 않습니다.
입력값을 잘못 읽기 쉬운 지점
1. 주간 시간을 월 환산시간 칸에 넣는 경우
주 40시간이나 한 달의 실제 출근시간을 그대로 넣기 전에, 계약서·급여명세서가 월 환산시간을 어떻게 정의하는지 확인해야 합니다. 주간시간과 월 환산시간은 같은 단위가 아닙니다.
2. 209시간을 항상 정답으로 보는 경우
화면에도 안내되어 있듯 209시간은 일부 주 40시간제 월급 산정에서 쓰이는 예시일 뿐입니다. 근무 형태와 계약 기준이 다르면 월 환산시간도 달라질 수 있습니다. 계산기의 기본값을 근거로 자신의 법정 기준을 단정하지 마세요.
3. 월급에 포함된 항목을 구분하지 않는 경우
식대·교통비·성과급·연장·야간·휴일근로 수당 등이 월급에 포함되어 있다면, 단순히 총액을 환산한 값이 어떤 임금 기준을 뜻하는지 달라질 수 있습니다. 이 도구는 항목별 법적 산입 여부를 판정하지 않습니다.
4. 쉼표와 단위를 섞어 입력하는 경우
시급에는 원 단위 금액, 월급에는 월 금액, 월 환산시간에는 시간 수를 넣으세요. 10,000원처럼 단위를 포함한 문장을 입력하기보다 숫자 칸에 숫자만 입력하고, 결과의 원 단위 표시는 화면에서 확인하는 편이 안전합니다.
결과가 맞지 않을 때 확인 순서
- 시급과 월급 중 어느 방향으로 환산했는지, 그리고 시급이 입력되어 큰 주 결과가 월급 추정값을 우선하는지 확인합니다.
- 월 환산시간이 주간시간이나 실제 출근일수로 바뀌어 있지 않은지 확인합니다.
- 소수 시간 입력 여부를 확인합니다.
- 계산기의 원 단위 버림 결과와 중간 계산값을 비교합니다.
- 급여명세서의 임금 항목과 회사의 산정 기준을 따로 확인합니다.
두 금액을 입력했다면 큰 주 결과만 보고 두 입력이 일치한다고 결론 내리지 말고, 아래 상세 행을 각각 다시 계산하세요. 먼저 시급×월 환산시간과 월급÷월 환산시간을 각각 계산하고, 마지막으로 화면이 표시한 정수 결과를 같은 방향으로 재현하면 됩니다. 월급을 시급으로 바꾼 뒤 다시 곱할 때는 버림 전의 원래 소수가 사라집니다. 예를 들어 예제 3의 11,961 × 209 = 2,499,849이므로 원래 2,500,000원과 151원 차이가 납니다. 이는 입력 오류가 아니라 버림을 거친 값을 역산한 결과입니다.
이 글의 예시는 모두 설명을 위한 합성 사례입니다. 최저임금 충족 여부, 통상임금·평균임금 해당 여부, 수당 산입 여부나 개인의 권리·의무를 판단하는 법률 자문이 아닙니다. 법령이나 고시의 적용 여부가 필요한 경우에는 해당 시점의 공식 자료와 전문가의 안내를 확인하세요. 이 글과 계산기의 산술 기준은 2026년 9월 14일에 확인한 현재 공개 소스 기준입니다.
확인한 공개 소스
src/lib/hourly.js: 양수 입력 검증, 시급×월 환산시간, 월급÷월 환산시간,Math.floor버림.