Полный аудит сайта и автономный план улучшений
Дата актуализации: 2026-07-10.
Репозиторий: deputat36/broker.
Основной домен: https://sterlikova-ipoteka.ru/.
1. Итог аудита
Сайт уже представляет собой полноценную SEO-структуру ипотечного брокера, а не одностраничный лендинг. Реализованы основные услуги, географические кластеры, полезные статьи, калькулятор, контакты, стоимость, консультация, FAQ, политика, Schema.org, Open Graph, sitemap, robots, мобильная навигация и доступность.
Главный этап наполнения завершен. Следующая задача — не бесконтрольно увеличивать количество страниц, а довести проект до стабильного рекламного состояния:
- обеспечить надежный деплой и автоматические проверки;
- привести все URL и структурированные данные к основному домену;
- подключить нормальные фотографии Татьяны;
- подключить аналитику;
- проверить домен, HTTPS и индексацию;
- усилить конверсию без выдуманных отзывов и обещаний;
- включать форму заявок только после отдельного тестирования и юридической подготовки.
2. Что сделано хорошо
2.1. Архитектура
- Jekyll и GitHub Pages подходят для текущего статического сайта.
- Основной домен задан в
_config.yml. - В корне есть
CNAME. - Деплой настроен через GitHub Actions.
- Нет тяжелых frontend-фреймворков и лишних зависимостей.
- JavaScript разделен по понятным задачам: меню, аналитика, MAX и калькулятор.
2.2. SEO
- Есть страницы основных услуг.
- Есть географические хабы по Борисоглебску, Грибановскому и Поворино.
- Есть большой раздел полезных материалов.
- Настроены canonical, Open Graph, Twitter Card и robots meta.
- Есть глобальная Schema.org-разметка Person и FinancialService.
- Есть page-level Schema.org для услуг, статей, FAQ и контактов.
- Есть хлебные крошки в интерфейсе и BreadcrumbList.
- Есть
robots.txt,sitemap.xml,llms.txtиhumans.txt.
2.3. Конверсия
Пользователь может:
- позвонить;
- скопировать номер для MAX;
- перейти во ВКонтакте;
- открыть страницу консультации;
- посмотреть стоимость;
- выполнить предварительный расчет ипотеки.
2.4. Контентная безопасность
В основных текстах используется корректная позиция:
- брокер помогает подготовить заявку;
- брокер помогает повысить шансы;
- окончательное решение принимает банк;
- нет обещания обязательного одобрения.
2.5. Доступность
- есть skip-link;
- используется
focus-visible; - меню имеет ARIA-состояния;
- калькулятор сообщает результат через
aria-live; - ошибки полей отмечаются через
aria-invalid; - мобильное меню закрывается по Escape и клику вне области.
2.6. Backend заявок
В Supabase подготовлены:
- таблица
public.broker_leads; - RLS;
- Edge Function
broker-public-lead; - миграция и исходный код функции в репозитории.
Публичная форма на сайте не включена. Это безопаснее, чем публиковать непроверенный сценарий.
3. Критические и важные проблемы
P0. Деплой и живой домен
По репозиторию видно, что GitHub Pages, CNAME и основной URL подготовлены. Однако состояние DNS, Enforce HTTPS, доступность боевого домена и фактическая индексация не подтверждаются содержимым репозитория.
Нужно вручную проверить:
- GitHub → Settings → Pages;
- custom domain
sterlikova-ipoteka.ru; - успешную DNS check;
- включенный
Enforce HTTPS; - открытие главной,
robots.txtиsitemap.xmlна основном домене; - добавление сайта в Яндекс Вебмастер и Google Search Console.
P0. Надежность сборки
До текущего аудита workflow только собирал и публиковал сайт. Он не проверял, что главная, sitemap, robots, CSS, JS и изображения действительно попали в _site.
Исправлено в текущем спринте:
- добавлен
scripts/post-build-check.sh; - проверка подключена в
.github/workflows/pages.yml; - деплой останавливается, если отсутствует обязательный файл, сломан sitemap или найдено запрещенное обещание.
P1. Фото Татьяны
Главная и страница «О брокере» используют временный файл:
assets/img/tatyana-hero.svg
Внутри SVG находится JPEG в base64. Это неудобно для поддержки, оптимизации и адаптивной загрузки.
Файлы пока отсутствуют:
assets/img/tatyana-hero.webp;assets/img/tatyana-hero-mobile.webp;assets/img/tatyana-avatar.webp.
assets/img/tatyana-social.jpg существует.
После загрузки новых изображений нужно:
- заменить
hero_photoна WebP; - внедрить
pictureс мобильной версией; - проверить размеры и качество;
- обновить страницу «О брокере»;
- проверить social preview.
P1. Аналитика не активна
В _config.yml остается:
yandex_metrika_id: ""
Код и цели подготовлены, но данные не собираются без ID счетчика.
Подготовленные цели:
phone_click;vk_click;max_copy;consultation_click;contacts_click;calculator_input.
P1. Старый технический домен в Schema.org
В исходниках еще встречается:
https://deputat36.github.io/broker
Поиск возвращает десятки страниц и хабов. Часть уже исправлена, но процесс не завершен. Это не должно оставаться в итоговой структурированной разметке после перехода на основной домен.
Нужно:
- сначала исправить главную и основные хабы;
- затем гео-страницы;
- затем статьи;
- после очистки превратить предупреждение post-build проверки в ошибку.
P1. Sitemap поддерживался вручную
Ручной список URL создавал риск:
- забыть новую страницу;
- оставить удаленную страницу;
- поддерживать два источника истины;
- постоянно редактировать большой XML-файл.
Исправлено в текущем спринте:
sitemap.xmlтеперь автоматически собирается изsite.pages;- исключаются 404, robots, сам sitemap,
sitemap: falseи страницы сnoindex.
P1. Форма заявок не включена
Backend подготовлен, но frontend не подключен. До включения нужны:
- тест Edge Function;
- проверка CORS;
- обработка ошибок и повторной отправки;
- защита от спама;
- согласие на обработку данных;
- обновленная политика;
- уведомление владельца о новой заявке.
P2. Политика обработки данных
Текущая политика соответствует состоянию сайта без формы и прямо говорит об этом. Перед запуском формы документ нужно пересмотреть и согласовать с профильным специалистом.
P2. Неподтвержденные маркетинговые детали
На главной есть показатель 15 мин на первичный разбор. Если это не реальный стандарт работы Татьяны, цифру нужно заменить на нейтральную формулировку.
Нельзя добавлять без подтверждения:
- стаж и количество сделок;
- проценты одобрения;
- отзывы;
- количество банков-партнеров;
- среднюю экономию;
- гарантированные сроки ответа или одобрения.
P2. PWA и иконки
site.webmanifest корректен на базовом уровне, но содержит только SVG-иконку. Для полноценного добавления на экран нужны PNG-иконки, включая maskable и apple-touch-icon.
P2. Поддерживаемость контента
У проекта много страниц с длинными однострочными HTML-блоками и вручную прописанной page-level Schema.org. Это усложняет массовые изменения.
В дальнейшем новые страницы лучше:
- оформлять более читаемыми блоками;
- использовать единый шаблон;
- уменьшать количество жестко заданных абсолютных URL;
- не создавать близкие по смыслу страницы без уникальной локальной ценности.
4. Текущая оценка по направлениям
| Направление | Состояние | Главная задача |
|---|---|---|
| Структура сайта | сильная | не раздувать без необходимости |
| SEO-кластеры | сильные | убрать старый домен и каннибализацию |
| Техническое SEO | хорошее | автоматизация и проверка живого домена |
| Деплой | улучшен | дождаться и проверить успешный workflow |
| Конверсия | рабочая | фото, аналитика, позднее форма |
| Контент | большой объем | повышать качество и перелинковку |
| Доступность | хорошая | продолжать проверку мобильных сценариев |
| Аналитика | не активна | нужен ID Метрики |
| Фото и доверие | временное решение | нужны WebP/JPG-файлы |
| Заявки | backend готов | frontend только после тестов |
5. Автономный план развития
Этап 1. Стабильность и техническая чистота
- Перевести sitemap на автоматическую генерацию.
- Добавить post-build проверку.
- Подключить проверку в GitHub Actions.
- Проверить результат последнего workflow.
- Устранить старый домен в главной и ключевых хабах.
- Затем очистить остальные страницы.
- После очистки сделать старый домен блокирующей ошибкой сборки.
Этап 2. Домен и индексация
- Проверить GitHub Pages settings.
- Проверить DNS и HTTPS.
- Проверить
robots.txtи автоматический sitemap на боевом домене. - Добавить сайт в Яндекс Вебмастер.
- Добавить сайт в Google Search Console.
- Отправить sitemap в обе системы.
Этот этап частично требует ручного доступа владельца к Beget, GitHub Pages и кабинетам поисковых систем.
Этап 3. Фото и доверие
- Загрузить четыре подготовленных изображения.
- Подключить WebP на главной.
- Добавить мобильный source.
- Обновить страницу «О брокере».
- Проверить social preview.
Этот этап заблокирован отсутствием финальных файлов фото.
Этап 4. Аналитика и конверсия
- Получить ID Яндекс Метрики.
- Подключить счетчик.
- Проверить цели.
- Добавить UTM-правила для рекламы.
- Проверить воронку: главная → консультация → звонок/MAX/VK.
- Уточнить показатель
15 мин.
Этап 5. Заявки через Supabase
- Провести технический тест Edge Function.
- Подготовить короткую форму.
- Добавить согласие и антиспам.
- Обновить политику.
- Добавить цель
lead_submit. - Добавить уведомления о заявке.
- Запустить только после полной проверки.
Этап 6. Контент и SEO
- Проверять уникальность гео-страниц.
- Искать страницы без внутренних входящих ссылок.
- Усиливать перелинковку вместо бесконтрольного добавления новых URL.
- Обновлять статьи, если меняются ипотечные программы или требования.
- Не публиковать ставки и условия банков без актуальной проверки.
6. Что выполняется автономно
Без дополнительных вопросов можно:
- исправлять технические ошибки;
- улучшать доступность;
- улучшать внутренние ссылки;
- обновлять sitemap, robots и Schema.org;
- поддерживать workflow и проверки;
- чистить старые URL;
- улучшать документацию;
- улучшать тексты без изменения тарифов и обещаний;
- проверять опасные формулировки.
7. Что требует данных или подтверждения
Нужны данные владельца для следующих задач:
- финальные фото Татьяны;
- ID Яндекс Метрики;
- подтверждение показателя
15 мин; - доступ или ручная проверка DNS, Pages, Вебмастера и Search Console;
- решение о запуске формы;
- юридическое согласование политики и согласия;
- любые отзывы, кейсы и персональные результаты;
- изменение тарифов и условий для клиентов «ЭТАЖИ».
8. Ближайший автономный спринт
- Проверить сборку после внедрения динамического sitemap и post-build проверки.
- Исправить старый домен в главной и основных хабах.
- Продолжить очистку гео-страниц и статей небольшими безопасными коммитами.
- Добавить технический документ по приемке боевого домена.
- Проверить главные CTA, калькулятор и мобильное меню по исходному коду.
- Обновлять этот документ и центральный issue после каждого законченного блока.