Блог им. imagic

Эффективная ставка НДФЛ

Сегодня Бюджетный комитет Госдумы одобрил законопроект о прогрессивной шкале НДФЛ.

Ранее Правительство РФ предложило шкалу, согласно которой с 1 января 2025 г: для доходов до 2,4 миллиона рублей подоходный налог остается на уровне 13%, для доходов от 2,4 до 5 миллионов рублей в год – 15%, от 5 до 20 миллионов рублей в год – 18%, от 20 до 50 миллионов рублей в год – 20%, для годового дохода свыше 50 миллионов рублей – 22%.

При этом, повышенный налог будет взиматься не со всей суммы, а только с превышения соответствующих порогов, т.е. эффективная ставка налога окажется меньше ставки для «налоговой скобки», в которую попадает полученный доход. Так, для суммы дохода в 30 млн руб. эффективная ставка окажется равной 18%

Вот как будет вести себя эффективная ставка НДФЛ в зависимости от величины годового дохода (без учета доходов от ценных бумаг и банковских вкладов, а также прочих исключений):

Эффективная ставка НДФЛ
Пример кода на Python для функции, вычисляющей эффективную ставку НДФЛ. Ставки и предельные суммы дохода задаются списками, их удобно менять.

def effective_tax_rate(income, brackets, tax_rates):
    """
    Вычисляет налоговый платеж по прогрессивной шкале налогообложения
    и эффективную ставку налога для заданного дохода.

    Параметры:
    income: Доход, для которого вычисляется налог.
    brackets: Список предельных значений дохода для каждой ставки налога.
    tax_rates: Список  налоговых ставок, соответствующих каждому диапазону дохода.

    Возвращает:
    effective_tax_rate: Эффективную ставку налога в процентах.
    """
    # Проверяем, что количество ставок налога и пределов дохода совпадает
    if len(brackets) != len(tax_rates):
        raise ValueError("Количество ставок налога должно соответствовать количеству диапазонов дохода.")

    total_tax = 0.0
    taxable_income = income

    for i in range(len(brackets)):
        if taxable_income <= 0:
            break

        lower_bound = 0 if i == 0 else brackets[i-1]
        upper_bound = brackets[i]
        tax_rate = tax_rates[i]

        taxable_amount = min(taxable_income, upper_bound - lower_bound)
        total_tax += taxable_amount * tax_rate
        taxable_income -= taxable_amount

    effective_tax_rate = (total_tax / income) * 100
    return effective_tax_rate

# Пример использования функции для конкретных значений
brackets = [2400000, 5000000, 20000000, 50000000, float('inf')]  # Пределы дохода
tax_rates = [0.13, 0.15, 0.18, 0.20, 0.22]                      # Ставки налога

income = 30000000  # Пример дохода, для которого вычисляем налог

ETR = effective_tax_rate(income, brackets, tax_rates)
print(f"Для дохода {income} эффективная ставка налога составляет: {ETR:.2f}%")



4 комментария
В предпоследней строчке ошибка
avatar
felidae, Да, спасибо.
Эти расчёты будут выглядеть интереснее с учётом вычета по ИИС(А), притом что с годовым доходом 4-5М закинуть 400к на ИИС гораздо проще, чем с доходом 1-2М.
avatar
E L, да, каждый инвестор может доработать функцию под свои потребности, если добавит дополнительные условия и признаки. 

теги блога Рахманинов

....все тэги



UPDONW
Новый дизайн