Почему в Инстаграме нет даты подписки
Это самый частый вопрос про списки подписок. Короткий ответ: даты нет нигде — ни в приложении, ни на сайте, ни в официальном интерфейсе для разработчиков. Ниже разберём, почему так, что люди пробуют вместо этого и что из этого действительно работает.
Короткий ответ
Instagram не показывает, когда один аккаунт подписался на другой. Этой информации нет в интерфейсе приложения, нет на сайте и нет в официальном Graph API, которым пользуются разработчики. Сторонние сервисы работают с теми же данными, что и вы, — значит, взять дату им тоже неоткуда.
Если сервис показывает «подписался 14 марта» — эта дата выдумана. Не оценочно, а буквально: источника для неё не существует.
Что люди пробуют и почему это не работает
Вопрос задают годами, и вокруг него накопились полурешения. Разберём их по одному — каждое что-то даёт, но ни одно не даёт даты.
Лента уведомлений
Когда на вас подписываются, приходит уведомление, и рядом стоит время: «2 ч.», «3 нед.». Это ближе всего к дате — но с тремя оговорками.
Во-первых, работает только для ваших собственных подписчиков: о том, на кого подписался кто-то другой, вам никто не сообщит. Во-вторых, показывается относительное время, а не дата, и чем старше событие, тем грубее округление. В-третьих, лента уведомлений не бесконечна: старые записи из неё уходят, и восстановить их нельзя.
То есть способ отвечает на вопрос «кто подписался на меня на этой неделе» и совсем не отвечает на «когда он подписался на неё».
Отметка в начале переписки
В личных сообщениях, если прокрутить в самое начало, встречается надпись «Вы подписаны друг на друга». Её часто принимают за отметку о времени.
Это не событие, а текущий статус: он показывает, что взаимная подписка есть прямо сейчас. Даты в нём нет, и он меняется, если кто-то отпишется. К моменту подписки эта надпись отношения не имеет.
«Почему вы видите эту публикацию»
В меню поста есть пункт, объясняющий, почему запись попала в ленту. Иногда там встречаются формулировки про недавние подписки, и это порождает надежду.
На деле пункт объясняет работу ленты, а не историю подписок: он про то, почему показали конкретную публикацию. Даты подписки там нет и не появится.
Сторонние сервисы, обещающие даты
Самый частый случай — сервис показывает уверенную дату и выглядит убедительно. Обычно за неё выдают одно из двух: момент, когда сервис сам впервыезаметил эту подписку в своих регулярных проверках, либо просто сгенерированное число. Первое хотя бы честно называется «замечено тогда-то», второе — обман.
Коротко: что даёт каждый способ
| Способ | Что показывает | Для чужого профиля |
|---|---|---|
| Лента уведомлений | Относительное время, только новые подписчики | Нет |
| Отметка в переписке | Текущий статус взаимности, без времени | Нет |
| «Почему вы видите публикацию» | Причину показа поста в ленте | Нет |
| Порядок в списке | Кто добавлен последними | Да |
| Два снимка списка | Что изменилось между проверками | Да |
Что существует вместо даты
Порядок. Список подписок упорядочен не по алфавиту и не случайно — записи идут в порядке добавления, и свежие подписки находятся ближе к началу.
Практическая разница простая: узнать «когда» нельзя, а узнать «кто последний» — можно. И спрашивают почти всегда именно второе. Вопрос «когда он на неё подписался» в девяти случаях из десяти означает «недавно или давно» — а на это порядок отвечает.
Почему в приложении список выглядит перемешанным
Частая жалоба: «открываю подписки — там каша, ни алфавита, ни хронологии». Причин две, и они разные.
Своё и чужое сортируется по-разному. Для вашего собственного списка приложение подмешивает алгоритм: наверх поднимаются те, с кем вы чаще переписываетесь и чьи публикации смотрите. Instagram официально порядок не документирует, но эффект заметен — список выглядит отсортированным «по близости», а не по времени. Именно поэтому свой список кажется хаотичным, хотя данные под ним упорядочены.
Подгрузка порциями. Список догружается по мере прокрутки. При быстром скролле подгрузка иногда сбивается, часть записей повторяется или пропадает — и порядок ломается уже на экране, а не в данных.
В отчёте список идёт по порядку добавления, без алгоритмической пересортировки и без обрывов. Поэтому верх нашего списка и верх списка в приложении могут не совпадать: у нас там свежие подписки, в приложении — частые собеседники.
Почему у публикаций дата есть, а у подписки нет
Вопрос закономерный: у поста дата отображается, у комментария тоже, у истории видно, сколько часов назад она выложена. Почему связь между аккаунтами — исключение?
Разница в том, что публикация — это объект, у неё есть автор, содержимое и момент создания, и всё это показывается по определению. Подписка же — это связь между двумя аккаунтами, и наружу отдаётся только сам факт её существования: есть или нет.
Момент создания связи внутри системы почти наверняка хранится — иначе порядок добавления было бы неоткуда взять. Но ни в интерфейсе, ни в официальном API это поле не публикуется. Поэтому порядок виден, а дата — нет: наружу выходит следствие, а не сама величина.
Как честно привязать подписку ко времени
Способ есть, и он не требует дат: два снимка списка с разницей во времени. Всё, что есть во втором и отсутствует в первом, добавлено между двумя проверками.
- Сделайте отчёт по профилю сейчас и сохраните выгрузку в CSV.
- Повторите через неделю или месяц — как вам нужно.
- Сравните два файла. Строки, которых не было в первом, — это подписки, появившиеся за период.
Сравнить можно в любой таблице. В Excel или Google Таблицах достаточно функции ВПР: подставьте ники из нового файла в старый и отберите те, для которых совпадения не нашлось. Это и есть новые подписки.
Результат — не календарная дата, а промежуток: «появился между первым и восьмым числом». Зато это факт, а не выдуманное число. И работает он в обе стороны: те, кто был в первом файле и пропал во втором, — отписались.
Почему мы не добавим «хотя бы примерные» даты
Потому что примерная дата, взятая из ниоткуда, — это та же выдумка, просто аккуратнее оформленная. Человек покупает отчёт ради одного конкретного вопроса и имеет право заранее знать, что он получит, а чего не получит никогда.
Мы могли бы начать запоминать, когда сами впервые увидели каждую подписку, и называть это датой. Но для профиля, который проверяют впервые, такая «дата» совпадала бы с датой проверки — то есть не значила бы ничего. Честнее показывать порядок и прямо говорить, что это порядок.
Что это значит на практике
- Нужны свежие подписки — смотрите верх списка. Достаточно одного отчёта.
- Нужно понять, что изменилось за период — делайте два отчёта и сравнивайте выгрузки.
- Нужна точная дата — её не существует. Ни у нас, ни у кого-либо ещё.
- Речь о своих подписчиках за последние дни — посмотрите ленту уведомлений, там будет относительное время.