{
 "meta": {
  "dataset": "Subscriber history — @zhfut",
  "channel": "https://tgregister.com/channel/zhfut",
  "retrieved_at": "2026-09-16T07:24:56.194Z",
  "licence": "CC BY 4.0 — attribute to tgregister.com",
  "n_readings": 31,
  "window": {
   "from": "2026-08-07T08:42:08.973Z",
   "to": "2026-09-14T16:58:56.585Z"
  },
  "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-07T08:42:08.973Z",
   "subscribers": 45757,
   "source": 0
  },
  {
   "ts": "2026-08-08T01:11:14.022Z",
   "subscribers": 45821,
   "source": 4
  },
  {
   "ts": "2026-08-09T03:11:08.594Z",
   "subscribers": 46070,
   "source": 4
  },
  {
   "ts": "2026-08-10T05:52:05.751Z",
   "subscribers": 46004,
   "source": 4
  },
  {
   "ts": "2026-08-11T02:41:48.605Z",
   "subscribers": 46119,
   "source": 4
  },
  {
   "ts": "2026-08-12T04:02:16.187Z",
   "subscribers": 46131,
   "source": 4
  },
  {
   "ts": "2026-08-12T18:43:59.634Z",
   "subscribers": 46131,
   "source": 1
  },
  {
   "ts": "2026-08-13T00:45:32.706Z",
   "subscribers": 46319,
   "source": 4
  },
  {
   "ts": "2026-08-14T12:04:35.518Z",
   "subscribers": 46449,
   "source": 4
  },
  {
   "ts": "2026-08-16T03:26:49.101Z",
   "subscribers": 46485,
   "source": 4
  },
  {
   "ts": "2026-08-17T11:48:54.816Z",
   "subscribers": 46566,
   "source": 4
  },
  {
   "ts": "2026-08-18T09:26:19.308Z",
   "subscribers": 46546,
   "source": 4
  },
  {
   "ts": "2026-08-19T10:49:08.146Z",
   "subscribers": 46571,
   "source": 4
  },
  {
   "ts": "2026-08-20T07:22:32.897Z",
   "subscribers": 46502,
   "source": 4
  },
  {
   "ts": "2026-08-22T14:22:43.355Z",
   "subscribers": 46574,
   "source": 4
  },
  {
   "ts": "2026-08-24T06:35:40.056Z",
   "subscribers": 46786,
   "source": 4
  },
  {
   "ts": "2026-08-25T05:36:41.726Z",
   "subscribers": 46723,
   "source": 4
  },
  {
   "ts": "2026-08-26T07:03:45.250Z",
   "subscribers": 46698,
   "source": 4
  },
  {
   "ts": "2026-08-27T08:18:59.237Z",
   "subscribers": 46828,
   "source": 4
  },
  {
   "ts": "2026-08-28T04:56:12.616Z",
   "subscribers": 46952,
   "source": 4
  },
  {
   "ts": "2026-08-29T06:34:54.764Z",
   "subscribers": 47008,
   "source": 4
  },
  {
   "ts": "2026-08-30T06:33:18.384Z",
   "subscribers": 47041,
   "source": 4
  },
  {
   "ts": "2026-08-31T04:35:30.868Z",
   "subscribers": 47160,
   "source": 4
  },
  {
   "ts": "2026-09-01T05:13:42.329Z",
   "subscribers": 47149,
   "source": 4
  },
  {
   "ts": "2026-09-02T03:16:43.570Z",
   "subscribers": 47075,
   "source": 4
  },
  {
   "ts": "2026-09-03T10:14:02.355Z",
   "subscribers": 47123,
   "source": 4
  },
  {
   "ts": "2026-09-05T03:20:39.495Z",
   "subscribers": 47269,
   "source": 4
  },
  {
   "ts": "2026-09-08T06:38:19.298Z",
   "subscribers": 47232,
   "source": 4
  },
  {
   "ts": "2026-09-11T05:58:59.974Z",
   "subscribers": 47832,
   "source": 4
  },
  {
   "ts": "2026-09-13T03:01:14.461Z",
   "subscribers": 47793,
   "source": 4
  },
  {
   "ts": "2026-09-14T16:58:56.585Z",
   "subscribers": 47791,
   "source": 4
  }
 ]
}
