{
 "meta": {
  "dataset": "Subscriber history — @irprogramer",
  "channel": "https://tgregister.com/channel/irprogramer",
  "retrieved_at": "2026-09-07T15:29:53.103Z",
  "licence": "CC BY 4.0 — attribute to tgregister.com",
  "n_readings": 28,
  "window": {
   "from": "2026-08-06T23:41:36.132Z",
   "to": "2026-09-06T17:00:16.145Z"
  },
  "columns": {
   "ts": "when this reading was taken, UTC",
   "subscribers": "the count read (or, for source 3, carried over) — see source below",
   "source": {
    "0": "sweep.py — t.me/<name> profile page",
    "1": "promote.py — Bot API getChat",
    "2": "resolve.py — MTProto",
    "3": "spromote.py — t.me/s/<name> post preview (figure carried over from an earlier profile read, not the preview’s own rounded header)",
    "4": "remeasure.py — t.me/<name> profile page, re-read on a schedule"
   }
  },
  "note": "Snapshots are written only when a reading changes: a gap in ts means \"no change observed between readings\", never \"not measured\" and never \"interpolated\". Readings from different sources are separate lineages that do not confirm one another — subtracting across them can attribute a change to a period nothing was actually read in. Full method: https://tgregister.com/methodology#measuring"
 },
 "rows": [
  {
   "ts": "2026-08-06T23:41:36.132Z",
   "subscribers": 22559,
   "source": 0
  },
  {
   "ts": "2026-08-07T13:52:49.512Z",
   "subscribers": 22556,
   "source": 4
  },
  {
   "ts": "2026-08-08T13:33:36.071Z",
   "subscribers": 22565,
   "source": 4
  },
  {
   "ts": "2026-08-09T14:14:34.888Z",
   "subscribers": 22560,
   "source": 4
  },
  {
   "ts": "2026-08-10T13:26:30.689Z",
   "subscribers": 22556,
   "source": 4
  },
  {
   "ts": "2026-08-11T12:52:43.080Z",
   "subscribers": 22551,
   "source": 4
  },
  {
   "ts": "2026-08-12T12:05:52.398Z",
   "subscribers": 22562,
   "source": 4
  },
  {
   "ts": "2026-08-13T09:08:21.138Z",
   "subscribers": 22559,
   "source": 4
  },
  {
   "ts": "2026-08-14T19:05:15.654Z",
   "subscribers": 22562,
   "source": 4
  },
  {
   "ts": "2026-08-15T20:06:29.773Z",
   "subscribers": 22562,
   "source": 1
  },
  {
   "ts": "2026-08-16T07:34:46.123Z",
   "subscribers": 22576,
   "source": 4
  },
  {
   "ts": "2026-08-17T13:57:44.635Z",
   "subscribers": 22583,
   "source": 4
  },
  {
   "ts": "2026-08-18T11:14:47.172Z",
   "subscribers": 22582,
   "source": 4
  },
  {
   "ts": "2026-08-19T07:41:45.185Z",
   "subscribers": 22574,
   "source": 4
  },
  {
   "ts": "2026-08-20T08:38:23.361Z",
   "subscribers": 22573,
   "source": 4
  },
  {
   "ts": "2026-08-21T05:36:07.032Z",
   "subscribers": 22564,
   "source": 4
  },
  {
   "ts": "2026-08-22T15:24:00.583Z",
   "subscribers": 22558,
   "source": 4
  },
  {
   "ts": "2026-08-24T09:19:18.130Z",
   "subscribers": 22553,
   "source": 4
  },
  {
   "ts": "2026-08-25T12:29:21.663Z",
   "subscribers": 22550,
   "source": 4
  },
  {
   "ts": "2026-08-26T14:18:39.580Z",
   "subscribers": 22532,
   "source": 4
  },
  {
   "ts": "2026-08-27T13:07:09.322Z",
   "subscribers": 22543,
   "source": 4
  },
  {
   "ts": "2026-08-28T15:32:53.005Z",
   "subscribers": 22537,
   "source": 4
  },
  {
   "ts": "2026-08-29T15:43:07.097Z",
   "subscribers": 22538,
   "source": 4
  },
  {
   "ts": "2026-08-30T18:18:32.802Z",
   "subscribers": 22541,
   "source": 4
  },
  {
   "ts": "2026-08-31T20:07:52.270Z",
   "subscribers": 22531,
   "source": 4
  },
  {
   "ts": "2026-09-01T21:26:36.594Z",
   "subscribers": 22526,
   "source": 4
  },
  {
   "ts": "2026-09-03T00:46:38.601Z",
   "subscribers": 22529,
   "source": 4
  },
  {
   "ts": "2026-09-06T17:00:16.145Z",
   "subscribers": 22540,
   "source": 4
  }
 ]
}
