{"slug":"who-sets-the-ex-dividend-date","qid":"special_size","label":"One-time distributions by size: where the ex-date lands","post_title":"Who Sets the Ex-Dividend Date? Not the Board","post_url":"/blog/who-sets-the-ex-dividend-date#q-special_size","columns":["amount_bucket","payout_count","ex_on_record_pct","ex_after_pay_pct"],"rows":[{"amount_bucket":"Under $0.50","payout_count":1680,"ex_on_record_pct":95.8,"ex_after_pay_pct":0.5},{"amount_bucket":"$0.50 to $2","payout_count":427,"ex_on_record_pct":90.9,"ex_after_pay_pct":4.4},{"amount_bucket":"$2 to $10","payout_count":226,"ex_on_record_pct":84.1,"ex_after_pay_pct":9.3},{"amount_bucket":"$10 and up","payout_count":55,"ex_on_record_pct":74.5,"ex_after_pay_pct":16.4}],"shape":"ranking","sql":"SELECT\n    multiIf(toFloat64(amount) <  0.5, 'Under $0.50',\n            toFloat64(amount) <  2.0, '$0.50 to $2',\n            toFloat64(amount) < 10.0, '$2 to $10',\n            '$10 and up')                                  AS amount_bucket,\n    count()                                                AS payout_count,\n    round(100 * countIf(ex_date = record_on) / count(), 1) AS ex_on_record_pct,\n    round(100 * countIf(ex_date > paid_on) / count(), 1)   AS ex_after_pay_pct\nFROM\n(\n    SELECT\n        id,\n        any(ticker)           AS dividend_ticker,\n        any(cash_amount)      AS amount,\n        any(ex_dividend_date) AS ex_date,\n        any(record_date)      AS record_on,\n        any(pay_date)         AS paid_on\n    FROM global_markets.stocks_dividends\n    WHERE frequency = 0\n      AND currency = 'USD'\n      AND cash_amount > 0\n      AND ex_dividend_date >= toDate('2024-09-01')\n      AND ex_dividend_date <  today()\n      AND record_date >= toDate('2000-01-01')\n      AND pay_date    >= toDate('2000-01-01')\n      AND ticker NOT IN ('SPCX')\n    GROUP BY id\n)\nGROUP BY amount_bucket\nORDER BY min(toFloat64(amount)) ASC","computed_at":"2026-08-22T04:36:20.199891+00:00","elapsed":0.058142207}