Проект на Lovable и 152-ФЗ: где нарушения и как их закрыть
Коротко: приложение на Lovable собирает персональные данные при регистрации, в формах и через аналитику, а хранит их в Lovable Cloud или в Supabase, и ни у одного из этих сервисов нет региона в России. С 1 июля 2025 года ч. 5 ст. 18 152-ФЗ запрещает записывать и хранить данные граждан РФ в зарубежных базах, штраф для компании до 6 млн руб., при повторном нарушении до 18 млн. Кроме переноса базы проекту нужны отдельный документ согласия (с 1 сентября 2025 года), опубликованная политика, уведомление Роскомнадзора, cookie-баннер и замена зарубежных скриптов. Ниже разобрано, где в проекте Lovable искать каждое нарушение и как его исправить.
Какие персональные данные собирает приложение на Lovable
Персональные данные по п. 1 ст. 3 152-ФЗ — любая информация, относящаяся к прямо или косвенно определённому или определяемому человеку. Оператор — тот, кто решает, зачем и какие данные собирать. Для приложения на Lovable это вы: ИП, компания или физлицо, которое запустило проект.
В типичном проекте данные попадают в систему в трёх местах.
Регистрация и вход. Встроенная авторизация Lovable Cloud по умолчанию работает по email, также доступны вход по SMS-коду, через Google, Apple, Microsoft и SAML SSO (документация Lovable). В базе оказываются email, хэш пароля, телефон, имя из профиля Google. Если включён журнал аудита, Supabase пишет в таблицу auth.audit_log_entries IP-адрес и user agent каждого входа (документация Supabase).
Формы. Заявки, запись на услугу, обратная связь, профиль пользователя. Обычно это таблица вроде leads или profiles в той же базе, иногда ещё и серверная функция, которая пересылает заявку на почту или в мессенджер.
Аналитика и сторонние скрипты. У Lovable есть готовые подключения Google Analytics и PostHog. Коннектор Google Analytics загружает на страницы скрипт gtag.js с серверов Google (документация). Сюда же относятся шрифты Google Fonts и reCAPTCHA.
Где Lovable хранит данные: Lovable Cloud и Supabase
Lovable Cloud — встроенный бэкенд Lovable: база данных, авторизация, хранилище файлов, серверные функции и доступ к AI. Он построен на открытом коде Supabase и включён по умолчанию, отдельный аккаунт Supabase большинству проектов не нужен (документация).
Для Lovable Cloud доступны три региона: Americas, Europe и Asia Pacific. Регион выбирается при включении Cloud, и после этого сменить его или перенести проект в другой регион нельзя. Российского региона нет.
Второй вариант — подключить собственный проект Supabase (документация). У Supabase Cloud региона в России тоже нет, подробнее в статье «Supabase в России в 2026 году».
Фронтенд опубликованного приложения Lovable раздаёт из точек по всему миру. Настройка региона влияет только на то, где хранятся данные бэкенда (документация).
Для проекта с пользователями из России это значит, что база с их персональными данными находится за рубежом.
Что требует ч. 5 ст. 18 152-ФЗ и какой штраф
С 1 июля 2025 года действует редакция ч. 5 ст. 18 152-ФЗ, введённая Федеральным законом от 28.02.2025 № 23-ФЗ. При сборе персональных данных, в том числе через интернет, запись, систематизация, накопление, хранение, уточнение и извлечение данных граждан РФ с использованием баз данных за пределами России не допускаются.
Исключения перечислены в пп. 2, 3, 4 и 8 ч. 1 ст. 6: функции, возложенные законом или международным договором, судопроизводство, полномочия госорганов, журналистика, наука и творчество. Обработки для исполнения договора с пользователем (п. 5) в этом списке нет, поэтому обычный сервис или стартап под исключения не подпадает.
Штраф установлен ч. 8 ст. 13.11 КоАП:
| Кто | Первое нарушение (ч. 8) | Повторное (ч. 9) |
|---|---|---|
| Гражданин | 30–50 тыс. руб. | 50–100 тыс. руб. |
| Должностное лицо | 100–200 тыс. руб. | 500–800 тыс. руб. |
| Юрлицо | 1–6 млн руб. | 6–18 млн руб. |
По примечанию 1 к той же статье индивидуальные предприниматели по ч. 8 и 9 отвечают как юрлица.
Чтобы закрыть это нарушение, базу с данными россиян нужно перенести в Россию. По документации Lovable, при уходе из Cloud поддерживаются два направления: управляемый Supabase и self-hosted Supabase (документация). Для России подходит второй вариант на сервере российского провайдера. Пошагово он описан в статье «Как перенести проект с Supabase Cloud на сервер в России».
Выгрузка данных из Cloud находится в More → Cloud → Overview → Advanced settings. В экспорт входят вся база (структура и данные) и учётные записи пользователей с хэшами паролей. Файлы из хранилища, код серверных функций, секреты, настройки провайдеров входа и API-ключи в экспорт не входят. Ограничения: база до 15 ГБ, файл экспорта до 5 ГБ, одна выгрузка в сутки (документация).
Внимание: кнопка Remove Lovable Cloud удаляет бэкенд проекта без возможности восстановления. Нажимайте её только после того, как проверили, что данные развёрнуты на новом сервере и приложение с ним работает.
Отдельное согласие на обработку: что изменилось с 1 сентября 2025 года
С 1 сентября 2025 года действует редакция ч. 1 ст. 9 152-ФЗ из Федерального закона от 24.06.2025 № 156-ФЗ: согласие на обработку персональных данных должно быть оформлено отдельно от иных информации и документов, которые подтверждает или подписывает человек.
Строка под кнопкой регистрации «Регистрируясь, вы принимаете условия и политику конфиденциальности» этому требованию не соответствует: согласие в ней объединено с пользовательским соглашением.
Согласие нужно не всегда. Если данные нужны для исполнения договора с пользователем, например чтобы оказать оплаченную услугу, основанием служит договор (п. 5 ч. 1 ст. 6). Для рассылок, аналитики и передачи данных партнёрам согласие обычно требуется. Практика оформления на сайте, по материалу спецпроекта РОСКОМ и ГАРАНТ.РУ: пустой чекбокс, который человек ставит сам, прямая ссылка на текст согласия рядом с ним, отдельные чекбоксы для разных целей, журнал с временем и версией текста.
Доказать, что согласие получено, обязан оператор (ч. 3 ст. 9). В проекте на Supabase журнал можно вести в отдельной таблице:
create table public.consent_log (
id bigint generated always as identity primary key,
user_id uuid references auth.users (id) on delete set null,
email text,
purpose text not null,
document_version text not null,
given_at timestamptz not null default now()
);
alter table public.consent_log enable row level security;
create policy "anyone can record consent" on public.consent_log
for insert to anon, authenticated
with check (user_id is null or user_id = (select auth.uid()));
Политики на чтение нет, поэтому записи видит только сервисная роль. Запись из формы:
const { error } = await supabase
.from("consent_log")
.insert({ email, purpose: "lead_form", document_version: "2026-09-01" });
Не добавляйте .select() после insert: без политики на чтение такой запрос завершится ошибкой RLS.
Обработка без законного основания наказывается по ч. 1 ст. 13.11 КоАП: для юрлиц 150–300 тыс. руб., повторно 300–500 тыс. руб. Если закон требует согласия в письменной форме, например для данных о здоровье, применяется ч. 2: для юрлиц 300–700 тыс. руб.
Политика обработки персональных данных по ст. 18.1
Ч. 2 ст. 18.1 152-ФЗ обязывает оператора, который собирает данные через интернет, опубликовать на страницах сайта, где идёт сбор, документ о политике обработки и сведения о реализуемых требованиях к защите данных. На практике это страница /privacy со ссылкой в подвале и рядом с каждой формой.
Если политику написала нейросеть, сверьте её с фактами. Практический минимум содержания:
- наименование оператора и контакты;
- цели обработки и основания для каждой цели;
- какие данные собираются и что с ними делают;
- сроки хранения и порядок удаления;
- где находится база данных;
- кому поручена обработка: хостинг, почтовый сервис, платёжный провайдер;
- есть ли передача за рубеж и в какие страны;
- права пользователя и способ отозвать согласие;
- меры защиты.
Если в политике написано «данные хранятся в России», а база по-прежнему в Lovable Cloud, документ фиксирует нарушение.
Штраф за неопубликованную политику по ч. 3 ст. 13.11 КоАП: для ИП 10–20 тыс. руб., для юрлиц 30–60 тыс. руб.
Нужно ли уведомлять Роскомнадзор
По ч. 1 ст. 22 152-ФЗ оператор уведомляет Роскомнадзор до начала обработки. Исключения в ч. 2 узкие: обработка без средств автоматизации, государственные системы, транспортная безопасность. Веб-приложение под них не подпадает.
В уведомлении среди прочего указывают, есть ли трансграничная передача (п. 10 ч. 3), и где находится база данных с данными граждан РФ (п. 10.1 ч. 3). Подать его можно через форму на портале персональных данных. Если сведения изменились, например вы перенесли базу, об изменениях сообщают не позднее 15-го числа следующего месяца (ч. 7 ст. 22).
Если данные уходят за рубеж, до начала передачи нужно отдельное уведомление о трансграничной передаче (ч. 3 ст. 12), а до его подачи — сведения от иностранного получателя о мерах защиты (ч. 5 ст. 12).
С 30 мая 2025 года за неподанное или поданное с опозданием уведомление штрафуют по ч. 10 ст. 13.11 КоАП: граждан на 5–10 тыс. руб., юрлиц и ИП на 100–300 тыс. руб.
Для проектов с открытыми таблицами важна ч. 3.1 ст. 21 152-ФЗ: при утечке Роскомнадзор уведомляют в течение 24 часов, результаты расследования сообщают в течение 72 часов. Неуведомление стоит юрлицу 1–3 млн руб. (ч. 11 ст. 13.11), сама утечка данных от 1 до 10 тыс. человек — 3–5 млн руб. (ч. 12).
Google Analytics, reCAPTCHA и Google Fonts: чем опасны зарубежные скрипты
Каждый скрипт или шрифт с серверов Google загружается браузером посетителя напрямую. Вместе с запросом Google получает IP-адрес и заголовки браузера, аналитика дополнительно ставит cookie с идентификатором. В материале РОСКОМ и ГАРАНТ.РУ IP-адрес и cookie прямо названы персональными данными.
Отсюда три риска:
- передача за рубеж без уведомления по ст. 12;
- при буквальном прочтении ч. 5 ст. 18 счётчик записывает данные россиян сразу в зарубежную базу;
- загрузка аналитики без согласия посетителя.
В старых проектах Lovable в index.html встречается ещё один внешний скрипт: https://cdn.gpteng.co/gptengineer.js. Он нужен редактору Lovable и помечен комментарием с просьбой его не удалять. Если проект уже редактируется вне Lovable, скрипт можно убрать.
Найти внешние ресурсы в проекте:
grep -rnE "googleapis|gstatic|googletagmanager|recaptcha|gpteng" index.html src public
Что сделать с находками:
- Google Fonts — перенести шрифты в сборку. Шрифты Google распространяются под открытыми лицензиями (репозиторий google/fonts), удобнее всего подключить их через Fontsource:
npm install @fontsource-variable/inter, затемimport "@fontsource-variable/inter";в главный файл приложения, в проектах на Vite этоsrc/main.tsx(документация). Строку<link href="https://fonts.googleapis.com/...">удалить. - reCAPTCHA — заменить на российский сервис, например Yandex SmartCaptcha.
- Google Analytics — удалить или заменить счётчиком, который хранит данные в России (проверьте это по условиям сервиса), и загружать его только после согласия в cookie-баннере.
Вход через Google и Apple: отдельный риск с июля 2026 года
Это требование другого закона, но оно касается той же формы регистрации. По ч. 10 ст. 8 149-ФЗ российский владелец сайта или приложения, который пускает к информации только авторизованных пользователей, обязан авторизовать пользователей из России одним из способов: по номеру мобильного телефона, через Госуслуги (ЕСИА), через Единую биометрическую систему или через информационную систему, которой владеет гражданин РФ или российское юрлицо.
С 7 июля 2026 года за нарушение штрафуют по ст. 13.55 КоАП, введённой Федеральным законом от 26.06.2026 № 199-ФЗ: граждан на 10–20 тыс. руб., должностных лиц на 30–50 тыс. руб., юрлиц на 500–700 тыс. руб.
Кнопки входа через Google, Apple и Microsoft, которые Lovable Cloud настраивает в режиме Managed by Lovable, для пользователей из России нужно убрать. Вход по email и паролю в этой норме не упомянут. В статье на garant.ru со ссылкой на разъяснения РОЦИТ сказано, что иностранная почта в роли логина под запрет не подпадает. В тексте закона такого уточнения нет, поэтому решение стоит согласовать с юристом.
Нужен ли cookie-баннер на сайте из Lovable
Отдельного закона о cookie в России нет. Требования вытекают из 152-ФЗ, если по данным в cookie можно определить человека. Практические рекомендации РОСКОМ и ГАРАНТ.РУ: при первом визите показывать баннер, где можно принять или отклонить аналитические и маркетинговые cookie, и не загружать их до явного согласия. Предустановленные галочки и отсутствие баннера там названы типичными нарушениями, которые фиксирует Роскомнадзор.
Что это значит для проекта:
- технические данные, без которых не работает вход в аккаунт, относятся к исполнению договора, согласие на них обычно не нужно;
- скрипты аналитики и рекламы подключаются только после нажатия «Принять»;
- кнопки «Принять» и «Отклонить» одинаково заметны;
- выбор сохраняется, и его можно изменить из подвала сайта.
Чек-лист: что исправить в проекте на Lovable
- Составьте список всех мест сбора данных: формы, регистрация, журналы входа, сторонние скрипты, интеграции.
- Выгрузите данные из Lovable Cloud и разверните базу на сервере в России. Для проекта на своём Supabase порядок тот же.
- Проверьте, что фронтенд обращается к новому адресу бэкенда, и только после этого отключайте Cloud.
- Уберите вход через Google, Apple и Microsoft для пользователей из России.
- Вынесите согласие в отдельный документ, поставьте пустые чекбоксы в каждую форму и ведите журнал согласий.
- Опубликуйте политику на
/privacyи сверьте её с реальной схемой хранения. - Перенесите шрифты в сборку, замените reCAPTCHA и зарубежную аналитику.
- Добавьте cookie-баннер, который блокирует аналитику до согласия.
- Подайте уведомление в Роскомнадзор с фактическим местом хранения базы. Если какие-то данные всё же уходят за рубеж, подайте ещё и уведомление о трансграничной передаче.
- Включите RLS на всех таблицах и назначьте, кто и как уведомляет Роскомнадзор об утечке в течение 24 часов.
Доступ к Lovable из России, оплата и выгрузка кода разобраны в статье «Lovable в России».
Статья не является юридической консультацией.
Если хотите, чтобы проект проверил инженер, оставьте заявку на Кодосмотр.