반복 일정 제대로 만들기 — 매월 31일의 함정과 수정 범위 고르기
2026년 8월 20일 · Frogset 가이드
반복 일정은 캘린더에서 가장 유용하고 가장 자주 잘못 만들어지는 기능입니다. "매월 31일"로 걸어 둔 카드 결제일 알림이 1년에 다섯 번 오지 않고, "넷째 금요일"로 잡은 정기 모임이 1년에 네 번 엉뚱한 날에 잡힙니다. 원인은 사용자의 실수라기보다 규칙 자체의 모호함입니다. 어디가 모호한지 알면 피할 수 있습니다.
이 글의 내용
반복 규칙은 네 조각으로 되어 있다
대부분의 캘린더가 쓰는 반복 규칙은 표준(RFC 5545)을 따르고, 그 규칙은 네 조각으로 분해됩니다. 이 구분을 알면 원하는 반복을 정확히 말할 수 있습니다.
| 조각 | 뜻 | 예 |
|---|---|---|
| 주기 | 얼마 단위로 반복하나 | 매일 / 매주 / 매월 / 매년 |
| 간격 | 그 단위를 몇 개씩 건너뛰나 | 2주마다, 3개월마다 |
| 상세 | 그 안에서 정확히 언제 | 월·수·금 / 15일 / 둘째 화요일 |
| 종료 | 언제까지 반복하나 | 12회까지 / 12월 31일까지 / 무한 |
문제는 거의 항상 상세와 종료에서 생깁니다. 주기와 간격은 직관적인데, 나머지 둘은 "달마다 사정이 다르다"는 현실과 부딪힙니다.
"매월 31일"의 함정
월급날, 카드 결제일, 월세 — 말일 기준으로 돌아가는 일이 많아서 "매월 31일" 반복은 흔한 선택입니다. 그런데 31일이 없는 달이 다섯 달입니다.
| 2026년 | 말일 | "매월 31일" 반복은? |
|---|---|---|
| 1월 | 31일 | 1월 31일 |
| 2월 | 28일 | 없음 |
| 3월 | 31일 | 3월 31일 |
| 4월 | 30일 | 없음 |
| 5월 | 31일 | 5월 31일 |
| 6월 | 30일 | 없음 |
| 7·8월 | 31일 | 7월 31일 · 8월 31일 |
| 9월 | 30일 | 없음 |
| 10월 | 31일 | 10월 31일 |
| 11월 | 30일 | 없음 |
| 12월 | 31일 | 12월 31일 |
열두 달 중 일곱 번만 나옵니다. 표준 규칙은 없는 날짜를 그냥 건너뜁니다 — 30일로 당겨 주지 않습니다. 이게 표준의 동작이라서, 도구를 바꿔도 대체로 같습니다.
더 고약한 건 조용히 실패한다는 점입니다. 에러가 나지 않고 그 달에만 항목이 없으니, "2월엔 알림이 안 왔네"를 알아차리기까지 몇 달이 걸립니다. 그 사이 결제일을 놓칩니다.
같은 함정이 29일·30일에도 있습니다. "매월 30일"은 2월에만 빠지고, "매월 29일"은 평년 2월에 빠집니다. 그리고 "매년 2월 29일"은 4년에 한 번만 오는 반복이 됩니다 — 2월 29일생의 생일 알림이 그렇습니다.
넷째 금요일과 마지막 금요일은 다르다
"매월 넷째 금요일"과 "매월 마지막 금요일"은 같은 말처럼 들리지만, 금요일이 다섯 번 있는 달에서 갈립니다. 2026년만 봐도 네 달이 어긋납니다.
| 2026년 | 넷째 금요일 | 마지막 금요일 | |
|---|---|---|---|
| 1월 | 23일 | 30일 | 7일 차이 |
| 2월 | 27일 | 27일 | 같음 |
| 5월 | 22일 | 29일 | 7일 차이 |
| 7월 | 24일 | 31일 | 7일 차이 |
| 10월 | 23일 | 30일 | 7일 차이 |
| 그 외 8개월 | 넷째 = 마지막 | 같음 | |
1년에 세 번에서 네 번, 즉 세 달에 한 번쯤 어긋납니다. 정기 모임을 "마지막 금요일"로 약속했는데 캘린더에는 "넷째 금요일"로 넣어 두면, 1월과 5월에 일주일 먼저 알림이 옵니다.
구분하는 방법은 간단합니다. 모임을 정할 때 쓴 말이 "말에 만나자"였으면 마지막 금요일, "넷째 주에 만나자"였으면 넷째 금요일입니다. 애매하면 마지막이 안전합니다 — 사람들은 대개 "그 달 끝"을 기준으로 기억합니다.
"몇째 주"라는 말 자체가 모호하다
덧붙여, "둘째 주 화요일"은 정의가 갈립니다. 그 달의 두 번째 화요일인지, 아니면 두 번째 주(週)에 속한 화요일인지. 1일이 수요일인 달이면 첫 화요일은 7일이고, "둘째 주 화요일"은 해석에 따라 7일 또는 14일이 됩니다. 캘린더 앱은 대개 "두 번째 화요일"로 해석하니, 사람과 약속할 때는 "두 번째 화요일"이라고 말하는 편이 오해가 적습니다.
종료 조건 — 끝을 안 정하면 쓰레기가 된다
대부분의 사람이 종료 조건을 비워 둡니다. 무한 반복이 기본값이니 편하긴 한데, 대가가 있습니다.
그만둔 학원이 3년 뒤에도 매주 화요일에 떠 있고, 끝난 프로젝트 회의가 계속 알림을 보냅니다. 이런 항목이 몇 개 쌓이면 달력이 신뢰를 잃습니다 — 뜬 항목이 실제인지 유령인지 매번 판단해야 하니까요.
횟수와 날짜, 어느 쪽으로 끊을까
| 기준 | 어울리는 경우 |
|---|---|
| 횟수로 끊기 ("12회까지") |
정해진 회차가 있는 일 — 12주 강의, 10회 물리치료, 5회권 수업. 회차 자체가 의미인 경우입니다. |
| 날짜로 끊기 ("12월 31일까지") |
기간이 정해진 일 — 계약 기간 동안의 정기 납부, 학기 중 등하원, 올해까지만 하는 모임. |
| 무한 | 진짜로 끝이 없는 것만 — 생일, 기념일, 쓰레기 배출. 그 외에는 쓰지 않는 게 좋습니다. |
끝을 모르겠으면 일단 6개월이나 1년으로 끊어 두세요. 계속되고 있으면 그때 연장하면 됩니다. 연장은 몇 초지만, 3년치 유령 일정을 정리하는 일은 훨씬 귀찮습니다.
수정 범위 — 가장 많이 틀리는 부분
반복 항목을 고치려고 하면 캘린더가 묻습니다. "이 항목만? 이후 전체? 아니면 전체?" 여기서 잘못 고르면 과거 기록이 망가지거나, 고쳤는데 다음 주에 원래대로 돌아옵니다.
| 고르는 것 | 이럴 때 | 주의 |
|---|---|---|
| 이 항목만 | 이번 주만 예외 — 휴강, 이번만 시간 변경, 이번 회차만 담당자 교체 | 다음 회차부터는 원래 규칙으로 돌아옵니다. "앞으로 계속"이면 잘못된 선택입니다. |
| 이후 전체 | 규칙이 바뀐 경우 — 다음 달부터 요일 변경, 금액·장소 변경, 담당자 교체 | 가장 자주 필요한데 가장 덜 쓰입니다. 과거 기록은 그대로 남으므로 안전합니다. |
| 전체 | 처음부터 잘못 만든 경우 — 제목 오타, 애초에 요일을 잘못 입력 | 과거 회차까지 바뀝니다. 완료 기록이 있으면 지난 기록이 사실과 달라집니다. |
실수 유형 두 가지
"이후 전체"를 써야 할 때 "이 항목만"을 쓰는 경우. 학원 요일이 화요일에서 목요일로 바뀌었는데 이번 주만 목요일로 옮겨 두면, 다음 주부터 다시 화요일에 뜹니다. 매주 옮기게 되고, 어느 주엔 잊어서 결국 빠뜨립니다.
"이후 전체"를 써야 할 때 "전체"를 쓰는 경우. 회비가 3만 원에서 5만 원으로 올랐는데 "전체"로 고치면 작년에 3만 원 냈던 기록까지 5만 원으로 바뀝니다. 가계부나 완료 기록이 붙어 있는 항목에서 이 실수는 데이터 손실입니다. 되돌리기도 어렵습니다.
"이 항목만" 수정과 규칙 변경이 겹치면
이번 회차만 시간을 옮겨 둔 상태에서 "이후 전체"로 규칙을 바꾸면, 개별로 손댄 예외가 유지될지 덮일지는 도구마다 다릅니다. 중요한 예외(중요한 약속 시간 변경 등)가 걸려 있다면 규칙 변경 후 그 회차를 한 번 확인하는 편이 안전합니다.
반복을 쓰면 안 되는 경우
반복이 항상 정답은 아닙니다. 오히려 방해가 되는 경우가 있습니다.
- 날짜가 매번 협의되는 일. "월 1회 가족 모임"처럼 매번 서로 시간을 맞춰 정하는 일정은 반복으로 걸면 매달 옮기는 작업이 생깁니다. 정해질 때마다 개별로 넣는 편이 낫습니다. 잊지 않으려면 "다음 모임 날짜 정하기"를 반복 할일로 걸어 두면 됩니다.
- 끝이 가까운 일. 3주짜리 프로젝트 회의 세 번은 반복 규칙을 만들고 종료 조건까지 정하는 비용이 개별 입력보다 큽니다.
- 매번 내용이 달라지는 일. 주간 회의라도 매주 안건이 다르면 반복 항목 하나에 메모를 덮어쓰게 되고, 지난주 내용이 사라집니다. 이럴 땐 반복으로 틀만 잡고 내용은 별도로 관리하는 게 좋습니다.
자주 묻는 것
"격주"는 어떻게 만드나요?
"매주 반복"에 간격 2를 주면 됩니다("2주마다"). 기준은 시작일이라, 원하는 주에 시작일을 맞추는 것이 중요합니다. 이번 주가 아니라 다음 주부터 시작하고 싶으면 시작일을 다음 주로 잡아야 합니다. 시작일을 이번 주로 두고 첫 회차를 삭제하면 이후 주기가 어긋날 수 있습니다.
공휴일에는 건너뛰게 할 수 있나요?
표준 반복 규칙에는 "공휴일 제외" 개념이 없습니다. 공휴일은 나라마다 다르고 해마다 바뀌기 때문입니다. 현실적인 방법은 해당 회차를 개별로 삭제하는 것입니다. 연초에 그 해 공휴일을 한 번 확인해 걸리는 회차를 정리해 두면 편합니다 (공휴일 목록).
음력으로 매년 반복할 수 있나요?
표준 반복 규칙은 양력만 다루므로, 음력 반복은 캘린더가 별도로 지원해야 합니다. 지원하지 않는 도구에서는 매년 양력 날짜를 계산해 개별 입력하는 수밖에 없습니다. 음력 반복의 특수한 문제(윤달, 30일이 없는 달)는 음력 기념일 가이드에서 다룹니다.
반복 할일과 반복 일정은 다른가요?
다르게 쓰는 편이 좋습니다. 일정은 시간이 정해진 약속이라 지나가면 끝입니다. 할일은 완료 여부가 있어서 안 하면 남습니다. "매주 수요일 재활용"은 할일로 두면 안 한 주가 기록에 남지만, 일정으로 두면 그냥 지나갑니다. 분담과 이행을 확인하고 싶은 것은 할일로 두세요.
반복 할일이 밀리면 어떻게 처리하나요?
반복 할일은 미룬 회차를 오늘로 끌고 오지 않는 편이 낫습니다. 어차피 다음 회차가 오기 때문에, 밀린 것을 다 당겨 오면 오늘 하루에 지난 몇 주치가 쌓입니다. 안 한 회차는 안 한 기록으로 남겨 두고 다음 회차에 집중하는 게 현실적입니다.
마치며
반복 일정에서 사고가 나는 지점은 정해져 있습니다. 없는 날짜(31일, 2월 29일), 모호한 순번(넷째 vs 마지막), 비어 있는 종료 조건, 그리고 수정 범위. 네 곳만 조심하면 나머지는 알아서 굴러갑니다.
지금 쓰고 있는 캘린더에서 "매월 31일"로 걸린 항목이 있는지 한 번 확인해 보세요. 있다면 2월과 4월에 알림을 못 받고 있었을 가능성이 높습니다.