Как рассчитать срок по дате начала
Рассчитать дедлайн по дате начала кажется пустяком. Прибавили 30 дней — и готово. Но как только в игре появляются месяцы, начинаются ошибки. Что значит «через месяц после 31 января»? Когда на самом деле заканчивается «договор на 12 месяцев», начавшийся 15 марта? Какая дата будет «через 90 дней от сегодня»?
С такими вопросами постоянно сталкиваются в договорах, подписках, трудовых отношениях и проектном планировании — и ошибки здесь приводят к реальным последствиям.
Калькулятор дат делает всё это автоматически. В статье разобраны правила, которые лежат в основе расчёта, чтобы вы могли проверить любой результат и понять, почему получается именно такая дата.
Прибавление дней: самый простой случай
Прибавлять календарные дни — самый надёжный вариант, потому что здесь нет двусмысленности. 30 дней после 7 апреля — это 7 мая. 90 дней после 15 января — это 15 апреля. Вы просто считаете вперёд, учитывая реальную длину каждого месяца.
Единственный источник ошибок — забыть, что месяцы разной длины. В феврале 28 дней (или 29 в високосный год), а не 30. И это важно, когда вы пересекаете февраль при подсчёте.
Пробный период на 30 дней, начавшийся 1 февраля, закончится 3 марта, а не 1 марта — потому что в феврале всего 28 дней, и оставшиеся 2 дня «переезжают» в март.
Если в договоре или политике написано просто «дни», для дедлайнов почти всегда подразумеваются календарные дни — если только в документе явно не указаны рабочие/банковские дни.
Прибавление месяцев: где всё усложняется
С месяцами сложнее, потому что они не одинаковой длины.
Стандартное правило — которым пользуются суды, большинство правовых подходов и большинство языков программирования — такое: вы попадаете на тот же номер дня в целевом месяце. Если такого дня в целевом месяце нет, дата «зажимается» до последнего существующего дня месяца.
Практические примеры:
| Дата начала | Срок | Результат | Почему |
|---|---|---|---|
| 15 января | +1 месяц | 15 февраля | Без особенностей |
| 31 января | +1 месяц | 28 февраля | В феврале нет 31-го — берём последний день |
| 31 января | +2 месяца | 31 марта | В марте есть 31-е — «зажимать» не нужно |
| 31 августа | +1 месяц | 30 сентября | В сентябре нет 31-го — «зажимаем» |
| 31 октября | +4 месяца | 28/29 февраля | В феврале нет 31-го — «зажимаем» |
| 15 марта | +12 месяцев | 15 марта следующего года | Та же дата, следующий год |
Правило «зажима» особенно важно для дат в конце месяца. Если вы подписали договор 31 января, срок «на один месяц» закончится 28 февраля — а не 3 марта. Смысл «+1 месяц» — оказаться в том же относительном месте следующего месяца, а не прибавить ровно 28, 29, 30 или 31 день.
Прибавление лет
С годами обычно всё просто: прибавляете нужное число лет и сохраняете тот же месяц и день.
Исключение — 29 февраля (даты в високосный день). Договор, начавшийся 29 февраля в високосный год и рассчитанный на один год, закончится 28 февраля следующего года, потому что 29 февраля в невисокосный год не существует.
Гарантия на 2 года, начавшаяся 29 февраля 2024 года, истекает 28 февраля 2026 года. Не 29 февраля (в 2026 его нет) и не 1 марта (это добавило бы лишний день).
Частые сценарии дедлайнов
Бесплатные пробные периоды и сроки возврата
Они почти всегда задаются в календарных днях. «Бесплатный пробный период 30 дней» начинается сегодня и заканчивается ровно через 30 дней. «Срок возврата 14 дней» от даты доставки истекает через 14 календарных дней после получения посылки.
Сложностей с концом месяца здесь нет — просто считайте вперёд.
Условия оплаты Net-30, Net-60, Net-90
Условия оплаты по счёту вроде Net-30 означают, что платёж должен поступить через 30 календарных дней от даты счёта. Счёт от 7 апреля при Net-30 должен быть оплачен 7 мая.
Отсчёт ведётся от даты счёта, а не от следующего дня. Прибавьте 30 дней к дате счёта — это и будет срок.
Договоры на 12 месяцев и годовые контракты
«12 месяцев от даты начала» — не всегда то же самое, что «до той же даты следующего года», но на практике чаще всего совпадает.
Договор, начавшийся 15 марта 2024 года на 12 месяцев, действует до 15 марта 2025 года. Прибавление 12 месяцев к месяцу (март — 3-й месяц, плюс 12 = 15-й, то есть март следующего года) приводит к той же дате. Для большинства дат это работает без нюансов.
Пограничный случай — снова конец месяца. Договор на 6 месяцев, начавшийся 31 августа, закончится 28/29 февраля, а не 31 февраля (которого не бывает). Договор на 3 месяца, начавшийся 30 ноября, закончится 28/29 февраля, а не 30 февраля.
Сроки уведомления в трудовых отношениях
Уведомление за 2 недели, начинающееся в понедельник, заканчивается во второе воскресенье; последний рабочий день — пятница перед этим. Здесь всё просто.
Срок уведомления 3 месяца, начавшийся 15 октября, заканчивается 15 января. Срок 1 месяц, начавшийся 31 января, заканчивается 28 февраля. Если нужен последний рабочий день, отступайте назад от даты окончания, пропуская выходные.
Испытательный срок
Испытательный срок «3 месяца» от даты выхода на работу считается так же, как прибавление месяцев в договоре: берём тот же номер дня через три месяца. Если дата выхода — 30 ноября, окончание испытательного срока будет 28/29 февраля.
В трудовом праве метод расчёта иногда прямо закреплён в законе или договоре. Если важна юридическая точность, сверяйтесь с применимым документом.
Истечение гарантий и сроков годности
Гарантия «2 года» на товар, купленный 7 апреля 2024 года, истекает 7 апреля 2026 года — тот же день, через два года. Для большинства дат здесь нет двусмысленности.
Единственная тонкость: товар, купленный 29 февраля 2024 года (в високосный день) с гарантией 2 года, будет на гарантии до 28 февраля 2026 года.
Календарные дни и рабочие дни
В большинстве договоров и политик речь идёт о календарных днях. «30 дней» — это 30 подряд идущих дней, включая выходные и праздники.
Если в документе указаны «рабочие дни», обычно подразумеваются дни, которые не являются выходными и не являются праздничными в соответствующей юрисдикции. В пересчёте это часто даёт примерно 20–22 рабочих дня на каждые 30 календарных (в зависимости от месяца и праздников).
Чтобы точно посчитать дедлайн в рабочих днях, нужно знать, какие праздники учитываются. Это зависит от страны и региона — календарь праздников в США и Великобритании отличается, даже если формулировка в договоре одинаковая.
Для грубой оценки: умножайте число рабочих дней на 1,4, чтобы получить примерное число календарных дней. 10 рабочих дней ≈ 14 календарных. 20 рабочих дней ≈ 28 календарных.
Когда нужно считать назад от фиксированного дедлайна
Иногда известна дата окончания, и нужно найти дату старта — или самую позднюю возможную дату старта.
Если проект должен быть завершён к 30 июня и требует 90 дней работы, самая поздняя дата начала — 1 апреля (за 90 дней до 30 июня).
Если решение о продлении нужно принять за 60 дней до окончания 31 декабря, то дедлайн на решение — 1 ноября.
Калькулятор дат по умолчанию прибавляет, но вычитание работает так же — введите отрицательное число дней или используйте режим вычитания. А чтобы понять, сколько дней осталось до дедлайна, используйте калькулятор Дней между датами: он принимает две даты и возвращает точное количество дней.
Короткий чек-лист для любого расчёта срока
1. Что вы прибавляете: дни, месяцы или годы? (Правила разные.) 2. Если месяцы — дата начала попадает на конец месяца? (Следите за «зажимом».) 3. В договоре указаны календарные дни или рабочие дни? 4. Если рабочие — праздники какой юрисдикции применяются? 5. Отсчёт начинается в день старта или со следующего дня? (Сверьтесь с договором.) 6. Есть ли на интервале високосный год? (Влияет на февраль.)
Разобраться в этих нюансах обычно несложно, если знать, на что смотреть. А сами расчёты — особенно с месяцами — проще прогнать через инструмент, чем вручную высчитывать каждый раз.


