{
 "survey": {
  "question": "How do views on public Telegram channels compare with subscriber counts, and how do they accumulate with post age?",
  "source": "public unauthenticated t.me pages only",
  "waves": 3,
  "primary_wave_first_fetch_utc": "2026-09-09T20:26:38Z",
  "primary_wave_last_fetch_utc": "2026-09-09T20:57:09Z",
  "channels_attempted": 430,
  "channels_included": 325,
  "channels_excluded": 105,
  "posts_measured": 5166,
  "total_http_requests": 2642,
  "rate_limit_seconds_between_requests": 2.0
 },
 "size_bands": {
  "small (<1k)": {
   "channels": 134,
   "median_subscribers": 135,
   "channel_median_ratio": {
    "n": 134,
    "p10": 0.1035,
    "p25": 0.2687,
    "median": 0.7129,
    "p75": 1.675,
    "p90": 4.0055,
    "mean": 2.2817,
    "min": 0.0041,
    "max": 65.4709
   },
   "post_ratio": {
    "n": 2028,
    "p10": 0.0908,
    "p25": 0.2591,
    "median": 0.734,
    "p75": 2.0354,
    "p90": 4.6337,
    "mean": 2.4501,
    "min": 0.0014,
    "max": 269.0583
   },
   "post_ratio_mature_only": {
    "n": 1799,
    "p10": 0.1575,
    "p25": 0.3724,
    "median": 0.8881,
    "p75": 2.2463,
    "p90": 5.2062,
    "mean": 2.7417,
    "min": 0.0021,
    "max": 269.0583
   },
   "post_ratio_age_2_to_30_days": {
    "n": 479,
    "p10": 0.071,
    "p25": 0.1798,
    "median": 0.4217,
    "p75": 0.7262,
    "p90": 1.1236,
    "mean": 0.5376,
    "min": 0.0021,
    "max": 5.2812
   },
   "median_days_of_history_visible": 40.17,
   "share_over_1": 0.3806
  },
  "mid (1k-50k)": {
   "channels": 100,
   "median_subscribers": 5707,
   "channel_median_ratio": {
    "n": 100,
    "p10": 0.0209,
    "p25": 0.0447,
    "median": 0.1146,
    "p75": 0.3291,
    "p90": 1.2502,
    "mean": 0.3959,
    "min": 0.0008,
    "max": 4.0173
   },
   "post_ratio": {
    "n": 1585,
    "p10": 0.0145,
    "p25": 0.0401,
    "median": 0.1135,
    "p75": 0.3234,
    "p90": 1.1662,
    "mean": 0.4123,
    "min": 0.0001,
    "max": 9.5825
   },
   "post_ratio_mature_only": {
    "n": 1186,
    "p10": 0.0277,
    "p25": 0.0661,
    "median": 0.1745,
    "p75": 0.4584,
    "p90": 1.5586,
    "mean": 0.5263,
    "min": 0.0004,
    "max": 9.5825
   },
   "post_ratio_age_2_to_30_days": {
    "n": 614,
    "p10": 0.0278,
    "p25": 0.0609,
    "median": 0.1173,
    "p75": 0.28,
    "p90": 0.4792,
    "mean": 0.1933,
    "min": 0.0039,
    "max": 1.7185
   },
   "median_days_of_history_visible": 14.5,
   "share_over_1": 0.11
  },
  "large (50k+)": {
   "channels": 91,
   "median_subscribers": 384946,
   "channel_median_ratio": {
    "n": 91,
    "p10": 0.0049,
    "p25": 0.0136,
    "median": 0.039,
    "p75": 0.0916,
    "p90": 0.2038,
    "mean": 0.1378,
    "min": 0.0005,
    "max": 3.3164
   },
   "post_ratio": {
    "n": 1553,
    "p10": 0.0039,
    "p25": 0.0109,
    "median": 0.0333,
    "p75": 0.0979,
    "p90": 0.2246,
    "mean": 0.1301,
    "min": 0.0001,
    "max": 7.3294
   },
   "post_ratio_mature_only": {
    "n": 753,
    "p10": 0.0056,
    "p25": 0.0151,
    "median": 0.0584,
    "p75": 0.1886,
    "p90": 0.4491,
    "mean": 0.2238,
    "min": 0.0016,
    "max": 7.3294
   },
   "post_ratio_age_2_to_30_days": {
    "n": 490,
    "p10": 0.0055,
    "p25": 0.0138,
    "median": 0.0528,
    "p75": 0.162,
    "p90": 0.2888,
    "mean": 0.1103,
    "min": 0.0016,
    "max": 2.2016
   },
   "median_days_of_history_visible": 3.33,
   "share_over_1": 0.022
  }
 },
 "ratio_all_channels": {
  "n": 325,
  "p10": 0.0137,
  "p25": 0.0463,
  "median": 0.1727,
  "p75": 0.7059,
  "p90": 2.3944,
  "mean": 1.1012,
  "min": 0.0005,
  "max": 65.4709
 },
 "ratio_all_posts": {
  "n": 5166,
  "p10": 0.0096,
  "p25": 0.0377,
  "median": 0.1591,
  "p75": 0.7073,
  "p90": 2.3628,
  "mean": 1.1274,
  "min": 0.0001,
  "max": 269.0583
 },
 "subscribers": {
  "n": 325,
  "p10": 63.0,
  "p25": 222.0,
  "median": 2149.0,
  "p75": 76625.0,
  "p90": 767106.0,
  "mean": 373532.7077,
  "min": 30.0,
  "max": 9593612.0
 },
 "above_ratio_1": {
  "channels_with_median_ratio_over_1": 64,
  "share_of_channels": 0.1969,
  "posts_over_1": 1061,
  "share_of_posts": 0.2054,
  "channels_with_any_post_over_1": 94,
  "share_of_channels_over_0.5": 0.32,
  "share_of_channels_over_1.0": 0.1969,
  "share_of_channels_over_2.0": 0.12,
  "share_of_channels_over_5.0": 0.0308,
  "share_of_channels_over_10.0": 0.0123
 },
 "ratio_by_post_age": {
  "CAUTION": "This table pools posts across channels and is CONFOUNDED: a busy large channel contributes many young posts and a quiet small one contributes only old ones, so part of the rise across buckets is the change in which channels are in each bucket, not ageing. Quote age_curve_cross_sectional (each post measured against its own channel) or age_curve_longitudinal (the same post read twice) instead. This table is here because it is the naive cut, and showing it is how we show it is not the evidence.",
  "buckets": {
   "<1h": {
    "n": 90,
    "median_ratio": 0.0183,
    "share_over_1": 0.0
   },
   "1-3h": {
    "n": 205,
    "median_ratio": 0.017,
    "share_over_1": 0.0
   },
   "3-6h": {
    "n": 227,
    "median_ratio": 0.0188,
    "share_over_1": 0.0
   },
   "6-12h": {
    "n": 307,
    "median_ratio": 0.0348,
    "share_over_1": 0.0033
   },
   "12-24h": {
    "n": 197,
    "median_ratio": 0.0366,
    "share_over_1": 0.0
   },
   "1-2d": {
    "n": 402,
    "median_ratio": 0.0592,
    "share_over_1": 0.0075
   },
   "2-7d": {
    "n": 680,
    "median_ratio": 0.1034,
    "share_over_1": 0.0191
   },
   ">7d": {
    "n": 3058,
    "median_ratio": 0.4805,
    "share_over_1": 0.3414
   }
  }
 },
 "oldest_vs_newest_within_channel": {
  "what_it_is": "channels whose oldest listed post has more views than their newest, counted only where the two are at least 24h apart",
  "channels_compared": 277,
  "oldest_has_more_views": 228,
  "share": 0.8231
 },
 "age_curve_cross_sectional": {
  "what_it_is": "views at age X divided by the same channel's median views for its own posts older than 48h, pooled across channels",
  "channels_normalised": 258,
  "channels_excluded_all_posts_under_48h": 67,
  "excluded_channels_median_subscribers": 113403,
  "included_channels_median_subscribers": 1016,
  "buckets": {
   "<1h": {
    "n": 7,
    "p10": 0.0093,
    "p25": 0.0216,
    "median": 0.0347,
    "p75": 0.0713,
    "p90": 0.1118,
    "mean": 0.0492,
    "min": 0.0033,
    "max": 0.1204
   },
   "1-3h": {
    "n": 24,
    "p10": 0.0919,
    "p25": 0.2148,
    "median": 0.2719,
    "p75": 0.375,
    "p90": 0.4359,
    "mean": 0.2765,
    "min": 0.0862,
    "max": 0.4742
   },
   "3-6h": {
    "n": 44,
    "p10": 0.1133,
    "p25": 0.2388,
    "median": 0.3152,
    "p75": 0.4375,
    "p90": 0.5638,
    "mean": 0.3323,
    "min": 0.0215,
    "max": 0.7603
   },
   "6-12h": {
    "n": 67,
    "p10": 0.1943,
    "p25": 0.3319,
    "median": 0.4972,
    "p75": 0.6204,
    "p90": 0.75,
    "mean": 0.4857,
    "min": 0.028,
    "max": 1.0843
   },
   "12-24h": {
    "n": 61,
    "p10": 0.3077,
    "p25": 0.3542,
    "median": 0.5556,
    "p75": 0.6667,
    "p90": 0.753,
    "mean": 0.5411,
    "min": 0.0323,
    "max": 1.6139
   },
   "1-2d": {
    "n": 198,
    "p10": 0.3282,
    "p25": 0.4646,
    "median": 0.6693,
    "p75": 0.8237,
    "p90": 0.9339,
    "mean": 0.6512,
    "min": 0.0959,
    "max": 1.6814
   },
   "2-7d": {
    "n": 675,
    "p10": 0.547,
    "p25": 0.7545,
    "median": 0.9333,
    "p75": 1.0227,
    "p90": 1.1202,
    "mean": 0.8956,
    "min": 0.043,
    "max": 4.7042
   },
   ">7d": {
    "n": 3058,
    "p10": 0.6694,
    "p25": 0.8653,
    "median": 1.0086,
    "p75": 1.2327,
    "p90": 1.691,
    "mean": 1.4233,
    "min": 0.019,
    "max": 818.9189
   }
  }
 },
 "age_curve_threshold_sensitivity": {
  "what_it_is": "the cross-sectional curve recomputed with the 'settled' cut-off moved. Each column is a different definition of what counts as a finished post.",
  "why_it_is_published": "the curve is sensitive to this choice, so quoting one threshold without the others would overstate how precisely we know the shape. The robust claim is the broad ordering — views rise with age at every threshold, except that the 6-12h and 12-24h buckets swap places at the 72h, 120h and 168h cut-offs — not the exact percentage at a given hour. (Corrected 2026-09-14: this used to say the rise was monotonic at every threshold.)",
  "thresholds": {
   "threshold_24h": {
    "channels_normalised": 284,
    "median_by_bucket": {
     "<1h": 0.0766,
     "1-3h": 0.3351,
     "3-6h": 0.4376,
     "6-12h": 0.6602,
     "12-24h": 0.7526,
     "1-2d": 0.9353,
     "2-7d": 0.978,
     ">7d": 1.0164
    }
   },
   "threshold_48h": {
    "channels_normalised": 258,
    "median_by_bucket": {
     "<1h": 0.0347,
     "1-3h": 0.2719,
     "3-6h": 0.3152,
     "6-12h": 0.4972,
     "12-24h": 0.5556,
     "1-2d": 0.6693,
     "2-7d": 0.9333,
     ">7d": 1.0086
    }
   },
   "threshold_72h": {
    "channels_normalised": 249,
    "median_by_bucket": {
     "<1h": 0.0739,
     "1-3h": 0.2703,
     "3-6h": 0.3075,
     "6-12h": 0.469,
     "12-24h": 0.4328,
     "1-2d": 0.6071,
     "2-7d": 0.8977,
     ">7d": 1.0035
    }
   },
   "threshold_120h": {
    "channels_normalised": 235,
    "median_by_bucket": {
     "<1h": 0.0326,
     "1-3h": 0.2197,
     "3-6h": 0.2475,
     "6-12h": 0.3941,
     "12-24h": 0.3602,
     "1-2d": 0.5511,
     "2-7d": 0.8089,
     ">7d": 1.0
    }
   },
   "threshold_168h": {
    "channels_normalised": 220,
    "median_by_bucket": {
     "<1h": 0.0293,
     "1-3h": 0.2197,
     "3-6h": 0.2268,
     "6-12h": 0.3554,
     "12-24h": 0.3199,
     "1-2d": 0.4403,
     "2-7d": 0.6684,
     ">7d": 1.0
    }
   }
  }
 },
 "size_vs_ratio": {
  "spearman_rho_subscribers_vs_median_ratio": -0.667,
  "note": "a negative rho means larger channels convert a smaller share of their subscriber count into views on a typical post",
  "by_subscriber_decile": [
   {
    "decile": 1,
    "channels": 32,
    "subscribers_min": 30,
    "subscribers_max": 62,
    "median_ratio": 1.3768,
    "share_over_1": 0.5938
   },
   {
    "decile": 2,
    "channels": 33,
    "subscribers_min": 63,
    "subscribers_max": 134,
    "median_ratio": 0.777,
    "share_over_1": 0.4242
   },
   {
    "decile": 3,
    "channels": 32,
    "subscribers_min": 135,
    "subscribers_max": 230,
    "median_ratio": 0.6065,
    "share_over_1": 0.3438
   },
   {
    "decile": 4,
    "channels": 33,
    "subscribers_min": 231,
    "subscribers_max": 728,
    "median_ratio": 0.4,
    "share_over_1": 0.2121
   },
   {
    "decile": 5,
    "channels": 32,
    "subscribers_min": 779,
    "subscribers_max": 2030,
    "median_ratio": 0.2409,
    "share_over_1": 0.2188
   },
   {
    "decile": 6,
    "channels": 33,
    "subscribers_min": 2149,
    "subscribers_max": 9848,
    "median_ratio": 0.1624,
    "share_over_1": 0.1212
   },
   {
    "decile": 7,
    "channels": 32,
    "subscribers_min": 10310,
    "subscribers_max": 45176,
    "median_ratio": 0.0748,
    "share_over_1": 0.0
   },
   {
    "decile": 8,
    "channels": 33,
    "subscribers_min": 45865,
    "subscribers_max": 154260,
    "median_ratio": 0.0469,
    "share_over_1": 0.0
   },
   {
    "decile": 9,
    "channels": 32,
    "subscribers_min": 157397,
    "subscribers_max": 752484,
    "median_ratio": 0.0396,
    "share_over_1": 0.0625
   },
   {
    "decile": 10,
    "channels": 33,
    "subscribers_min": 776854,
    "subscribers_max": 9593612,
    "median_ratio": 0.0198,
    "share_over_1": 0.0
   }
  ]
 },
 "posting_cadence": {
  "what_it_is": "posts per day over the span the preview shows, against the channel's median view-to-subscriber ratio. Note the denominator: a channel that posted twenty times in ten minutes and then stopped scores thousands of posts per day. This is a rate over the visible window, not a habit, which is why only rank-based statistics are computed from it.",
  "channels_with_a_defined_cadence": 325,
  "posts_per_day": {
   "n": 325,
   "p10": 0.083,
   "p25": 0.227,
   "median": 0.908,
   "p75": 6.001,
   "p90": 36.601,
   "mean": 68.2771,
   "min": 0.014,
   "max": 9056.604
  },
  "spearman_rho_cadence_vs_ratio": -0.5418,
  "by_cadence_quartile": [
   {
    "quartile": 1,
    "channels": 81,
    "posts_per_day_min": 0.014,
    "posts_per_day_max": 0.223,
    "median_ratio": 1.0299,
    "median_subscribers": 315
   },
   {
    "quartile": 2,
    "channels": 81,
    "posts_per_day_min": 0.227,
    "posts_per_day_max": 0.858,
    "median_ratio": 0.2793,
    "median_subscribers": 451
   },
   {
    "quartile": 3,
    "channels": 81,
    "posts_per_day_min": 0.908,
    "posts_per_day_max": 5.995,
    "median_ratio": 0.1094,
    "median_subscribers": 25627
   },
   {
    "quartile": 4,
    "channels": 82,
    "posts_per_day_min": 6.001,
    "posts_per_day_max": 9056.604,
    "median_ratio": 0.0446,
    "median_subscribers": 53684
   }
  ],
  "caution": "cadence and size are entangled — busy channels are also large ones — so the median_subscribers column is printed beside each quartile. This is an association, not an experiment, and it does not show that posting less would raise anyone's view rate."
 },
 "fresh_post_illusion": {
  "what_it_is": "for channels whose newest listed post was under 6 hours old, that post's views divided by the channel's own settled level",
  "channels": 45,
  "summary": {
   "n": 45,
   "p10": 0.0774,
   "p25": 0.1246,
   "median": 0.2535,
   "p75": 0.3711,
   "p90": 0.4449,
   "mean": 0.2627,
   "min": 0.0033,
   "max": 0.7522
  },
  "share_that_look_like_a_50pct_drop": 0.9556
 },
 "age_curve_longitudinal": {
  "what_it_is": "the same post id read twice, hours apart; growth is the second reading divided by the first",
  "pairs_total": 9976,
  "pairs_where_growth_is_resolvable": 9739,
  "counter_step_as_pct_of_reading": {
   "n": 9976,
   "p10": 0.1503,
   "p25": 0.255,
   "median": 0.5682,
   "p75": 1.1364,
   "p90": 4.0,
   "mean": 2.2379,
   "min": 0.1002,
   "max": 100.0
  },
  "why_that_matters": "t.me prints view counts to three significant figures, so a change smaller than the counter's own step is invisible. Growth figures below are restricted to pairs whose step is under 20% of the reading, and understate small increases.",
  "median_gap_hours": 2.57,
  "buckets": {
   "<1h": {
    "n": 121,
    "median_gap_hours": 2.57,
    "median_growth": 2.4888,
    "p90_growth": 5.1294,
    "share_that_increased": 1.0,
    "median_percent_gain": 148.88,
    "median_counter_step_pct": 0.552
   },
   "1-3h": {
    "n": 352,
    "median_gap_hours": 2.57,
    "median_growth": 1.2527,
    "p90_growth": 1.8274,
    "share_that_increased": 0.9858,
    "median_percent_gain": 25.27,
    "median_counter_step_pct": 0.497
   },
   "3-6h": {
    "n": 391,
    "median_gap_hours": 2.57,
    "median_growth": 1.135,
    "p90_growth": 1.5,
    "share_that_increased": 0.9795,
    "median_percent_gain": 13.5,
    "median_counter_step_pct": 0.443
   },
   "6-12h": {
    "n": 537,
    "median_gap_hours": 2.57,
    "median_growth": 1.0553,
    "p90_growth": 1.1992,
    "share_that_increased": 0.9385,
    "median_percent_gain": 5.53,
    "median_counter_step_pct": 0.518
   },
   "12-24h": {
    "n": 321,
    "median_gap_hours": 2.57,
    "median_growth": 1.0342,
    "p90_growth": 1.1429,
    "share_that_increased": 0.9003,
    "median_percent_gain": 3.42,
    "median_counter_step_pct": 0.592
   },
   "1-2d": {
    "n": 728,
    "median_gap_hours": 2.57,
    "median_growth": 1.0133,
    "p90_growth": 1.0461,
    "share_that_increased": 0.8544,
    "median_percent_gain": 1.33,
    "median_counter_step_pct": 0.513
   },
   "2-7d": {
    "n": 1300,
    "median_gap_hours": 6.05,
    "median_growth": 1.0045,
    "p90_growth": 1.0253,
    "share_that_increased": 0.6654,
    "median_percent_gain": 0.45,
    "median_counter_step_pct": 0.614
   },
   ">7d": {
    "n": 5989,
    "median_gap_hours": 6.05,
    "median_growth": 1.0,
    "p90_growth": 1.0031,
    "share_that_increased": 0.1561,
    "median_percent_gain": 0.0,
    "median_counter_step_pct": 0.562
   }
  }
 },
 "within_channel_variation": {
  "p90_over_p10_views_within_a_channel": {
   "n": 325,
   "p10": 1.4514,
   "p25": 1.778,
   "median": 2.236,
   "p75": 3.245,
   "p90": 5.4608,
   "mean": 5.6424,
   "min": 1.107,
   "max": 440.8
  },
  "consecutive_post_view_change": {
   "n": 4841,
   "p10": 0.663,
   "p25": 0.86,
   "median": 0.9889,
   "p75": 1.0769,
   "p90": 1.2418,
   "mean": 1.437,
   "min": 0.0019,
   "max": 434.0
  },
  "share_of_consecutive_pairs_that_fell": 0.528,
  "share_of_consecutive_pairs_that_fell_over_25pct": 0.1489,
  "share_of_consecutive_pairs_that_fell_over_50pct": 0.0475
 },
 "post_type": {
  "note": "is_forward means the post was forwarded INTO this channel from elsewhere. It does not measure how often this channel's own posts were forwarded outward, which this source cannot see.",
  "forwarded_in": {
   "n": 364,
   "p10": 0.0086,
   "p25": 0.0258,
   "median": 0.072,
   "p75": 0.2455,
   "p90": 1.8139,
   "mean": 0.6845,
   "min": 0.0001,
   "max": 20.9692
  },
  "originated_here": {
   "n": 4802,
   "p10": 0.0097,
   "p25": 0.0393,
   "median": 0.172,
   "p75": 0.7315,
   "p90": 2.3747,
   "mean": 1.161,
   "min": 0.0001,
   "max": 269.0583
  },
  "with_media": {
   "n": 3628,
   "p10": 0.0082,
   "p25": 0.0309,
   "median": 0.1254,
   "p75": 0.5816,
   "p90": 2.0704,
   "mean": 0.9052,
   "min": 0.0001,
   "max": 66.8161
  },
  "text_only": {
   "n": 1538,
   "p10": 0.0153,
   "p25": 0.0748,
   "median": 0.2696,
   "p75": 1.0877,
   "p90": 3.2059,
   "mean": 1.6517,
   "min": 0.0001,
   "max": 269.0583
  },
  "share_of_posts_that_are_forwards": 0.0705,
  "share_of_posts_with_media": 0.7023
 },
 "media_vs_text_within_channel": {
  "what_it_is": "for channels with at least 3 media and 3 text-only posts, the ratio of their median media views to their median text-only views. 1.0 means no difference.",
  "channels_compared": 146,
  "summary": {
   "n": 146,
   "p10": 0.7462,
   "p25": 0.9238,
   "median": 1.0339,
   "p75": 1.1346,
   "p90": 1.4084,
   "mean": 1.1215,
   "min": 0.2699,
   "max": 3.6538
  },
  "share_where_media_did_better": 0.5959,
  "caution": "post type is not randomly assigned — a channel puts media on the posts it thinks deserve it. This measures an association inside a channel, not the effect of adding a photo."
 },
 "small_channels": {
  "note": "Asked because 'telegram channel statistics minimum subscribers' is a common search. Two different things get confused: the per-post view counter, which is what this survey reads, and Telegram's in-app statistics screen, which is a separate feature with its own unlock threshold and is NOT observable from a public page. We can speak to the first and not at all to the second.",
  "channels_under_50_subscribers": 23,
  "channels_under_100_subscribers": 58,
  "channels_under_1000_subscribers": 134,
  "smallest_channel_with_view_counts": 30,
  "counter_presence_is_circular_for_included_channels": true,
  "channels_excluded_for_having_no_view_counter": 22,
  "of_those_how_many_were_excluded_because_of_size": 0,
  "size_is_never_an_exclusion_rule": true
 },
 "exclusions": {
  "no public web preview: t.me/s/ served the contact card instead": 45,
  "no public preview (private, deleted or username free)": 37,
  "fewer than 5 posts carry a view counter (n)": 19,
  "no listed post carries a view counter (all service messages)": 3,
  "preview rendered but lists no posts": 1
 },
 "frame_yield_by_stratum": {
  "rank-deep": {
   "included": 41,
   "excluded": 39,
   "attempted": 80,
   "exclusion_rate": 0.4875
  },
  "rank-fill": {
   "included": 36,
   "excluded": 19,
   "attempted": 55,
   "exclusion_rate": 0.3455
  },
  "rank-lang": {
   "included": 66,
   "excluded": 14,
   "attempted": 80,
   "exclusion_rate": 0.175
  },
  "rank-mid": {
   "included": 60,
   "excluded": 20,
   "attempted": 80,
   "exclusion_rate": 0.25
  },
  "rank-top": {
   "included": 74,
   "excluded": 6,
   "attempted": 80,
   "exclusion_rate": 0.075
  },
  "topic": {
   "included": 48,
   "excluded": 7,
   "attempted": 55,
   "exclusion_rate": 0.1273
  }
 },
 "frame": {
  "directory_pages_fetched": 62,
  "directory_pages_ok": 61,
  "candidate_usernames": 5157,
  "channels_drawn_into_sample": 430,
  "sample_seed": 20260909,
  "sources": [
   "https://combot.org",
   "https://tgstat.com"
  ]
 },
 "preview_window": {
  "posts_listed_per_channel": {
   "n": 325,
   "p10": 9.0,
   "p25": 13.0,
   "median": 19.0,
   "p75": 20.0,
   "p90": 20.0,
   "mean": 16.3138,
   "min": 5.0,
   "max": 20.0
  },
  "posts_with_view_counter_per_channel": {
   "n": 325,
   "p10": 9.0,
   "p25": 12.0,
   "median": 18.0,
   "p75": 20.0,
   "p90": 20.0,
   "mean": 15.8954,
   "min": 5.0,
   "max": 20.0
  },
  "days_of_history_visible": {
   "n": 325,
   "p10": 0.402,
   "p25": 2.25,
   "median": 18.35,
   "p75": 63.0,
   "p90": 192.518,
   "mean": 73.6089,
   "min": 0.0,
   "max": 1422.06
  }
 },
 "age_curve_followup": {
  "what_it_is": "the same post ids as the first same-night reading, read again days later; growth is the later reading divided by the first",
  "why_separate": "kept apart from age_curve_longitudinal, whose pairs are hours apart, so the published same-night figures do not change",
  "selection_note": "t.me/s/ lists roughly the latest 20 posts, so a post from the first wave is still listed days later only on channels that posted few new posts in between. Fast-posting channels drop out; these figures describe slower-posting channels.",
  "waves": {
   "4": {
    "capture_first_fetch_utc": "2026-09-13T21:24:58Z",
    "capture_last_fetch_utc": "2026-09-13T21:55:30Z",
    "http_requests": 860,
    "channels_in_first_wave": 325,
    "channels_usable_in_this_wave": 325,
    "channels_excluded_in_this_wave": 105,
    "channels_with_at_least_one_pair": 244,
    "pairs_total": 3396,
    "pairs_where_growth_is_resolvable": 3339,
    "median_gap_hours": 96.98,
    "channels_without_a_pair": 81,
    "why_no_pair": {
     "every first-wave post had scrolled out of the preview": 76,
     "not usable in this wave": 4,
     "other (ids overlap but no pair with views on both readings)": 1
    },
    "median_subscribers_channels_with_a_pair": 1007.5,
    "median_subscribers_channels_without_a_pair": 58808,
    "median_posts_per_day_channels_with_a_pair": 0.43,
    "median_posts_per_day_channels_without_a_pair": 13.99,
    "posts_under_24h_at_first": {
     "n": 122,
     "median_share_of_later_views_present_at_first": 0.4643
    },
    "same_night_growth_subset_check": {
     "<1h": {
      "pairs_channels_with_a_followup_pair": 7,
      "median_percent_gain_channels_with_a_followup_pair": 144.4,
      "pairs_other_channels": 61,
      "median_percent_gain_other_channels": 108.3
     },
     "1-3h": {
      "pairs_channels_with_a_followup_pair": 22,
      "median_percent_gain_channels_with_a_followup_pair": 24.9,
      "pairs_other_channels": 156,
      "median_percent_gain_other_channels": 17.7
     },
     "3-6h": {
      "pairs_channels_with_a_followup_pair": 42,
      "median_percent_gain_channels_with_a_followup_pair": 9.6,
      "pairs_other_channels": 157,
      "median_percent_gain_other_channels": 9.3
     },
     "6-12h": {
      "pairs_channels_with_a_followup_pair": 58,
      "median_percent_gain_channels_with_a_followup_pair": 3.1,
      "pairs_other_channels": 215,
      "median_percent_gain_other_channels": 4.3
     },
     "12-24h": {
      "pairs_channels_with_a_followup_pair": 41,
      "median_percent_gain_channels_with_a_followup_pair": 1.7,
      "pairs_other_channels": 122,
      "median_percent_gain_other_channels": 2.4
     },
     "1-2d": {
      "pairs_channels_with_a_followup_pair": 159,
      "median_percent_gain_channels_with_a_followup_pair": 0.8,
      "pairs_other_channels": 214,
      "median_percent_gain_other_channels": 0.9
     },
     "2-7d": {
      "pairs_channels_with_a_followup_pair": 547,
      "median_percent_gain_channels_with_a_followup_pair": 0.3,
      "pairs_other_channels": 98,
      "median_percent_gain_other_channels": 0.3
     },
     ">7d": {
      "pairs_channels_with_a_followup_pair": 2932,
      "median_percent_gain_channels_with_a_followup_pair": 0.0,
      "pairs_other_channels": 55,
      "median_percent_gain_other_channels": 0.0
     }
    },
    "buckets": {
     "<1h": {
      "n": 5,
      "channels": 4,
      "most_pairs_from_one_channel": 2,
      "median_gap_hours": 96.98,
      "median_growth": 17.2196,
      "median_percent_gain": 1621.96,
      "p90_growth": 22.4988,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.0581
     },
     "1-3h": {
      "n": 18,
      "channels": 11,
      "most_pairs_from_one_channel": 5,
      "median_gap_hours": 96.98,
      "median_growth": 3.2053,
      "median_percent_gain": 220.53,
      "p90_growth": 5.261,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.312
     },
     "3-6h": {
      "n": 29,
      "channels": 25,
      "most_pairs_from_one_channel": 2,
      "median_gap_hours": 96.98,
      "median_growth": 2.64,
      "median_percent_gain": 164.0,
      "p90_growth": 4.9678,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.3788
     },
     "6-12h": {
      "n": 38,
      "channels": 26,
      "most_pairs_from_one_channel": 3,
      "median_gap_hours": 96.98,
      "median_growth": 1.9041,
      "median_percent_gain": 90.41,
      "p90_growth": 3.4826,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.5252
     },
     "12-24h": {
      "n": 32,
      "channels": 28,
      "most_pairs_from_one_channel": 2,
      "median_gap_hours": 96.98,
      "median_growth": 1.9298,
      "median_percent_gain": 92.98,
      "p90_growth": 2.598,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.5182
     },
     "1-2d": {
      "n": 127,
      "channels": 63,
      "most_pairs_from_one_channel": 5,
      "median_gap_hours": 96.98,
      "median_growth": 1.4937,
      "median_percent_gain": 49.37,
      "p90_growth": 1.9746,
      "share_that_increased": 1.0,
      "share_unchanged": 0.0,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.6695
     },
     "2-7d": {
      "n": 377,
      "channels": 95,
      "most_pairs_from_one_channel": 12,
      "median_gap_hours": 96.98,
      "median_growth": 1.2281,
      "median_percent_gain": 22.81,
      "p90_growth": 1.575,
      "share_that_increased": 0.9973,
      "share_unchanged": 0.0027,
      "unchanged_with_exact_counter": 0,
      "median_share_of_later_views_present_at_first": 0.8143
     },
     "7-14d": {
      "n": 268,
      "channels": 87,
      "most_pairs_from_one_channel": 12,
      "median_gap_hours": 96.98,
      "median_growth": 1.1122,
      "median_percent_gain": 11.22,
      "p90_growth": 1.2539,
      "share_that_increased": 0.9627,
      "share_unchanged": 0.0373,
      "unchanged_with_exact_counter": 8,
      "median_share_of_later_views_present_at_first": 0.8991
     },
     "14-30d": {
      "n": 389,
      "channels": 85,
      "most_pairs_from_one_channel": 14,
      "median_gap_hours": 96.98,
      "median_growth": 1.0437,
      "median_percent_gain": 4.37,
      "p90_growth": 1.1272,
      "share_that_increased": 0.9075,
      "share_unchanged": 0.0925,
      "unchanged_with_exact_counter": 25,
      "median_share_of_later_views_present_at_first": 0.9581
     },
     ">30d": {
      "n": 2056,
      "channels": 163,
      "most_pairs_from_one_channel": 20,
      "median_gap_hours": 96.98,
      "median_growth": 1.0,
      "median_percent_gain": 0.0,
      "p90_growth": 1.0322,
      "share_that_increased": 0.4874,
      "share_unchanged": 0.5126,
      "unchanged_with_exact_counter": 762,
      "median_share_of_later_views_present_at_first": 1.0
     }
    }
   }
  }
 }
}
