{"slug":"how-stock-settlement-works-t-plus-1","qid":"msft_dividends","label":"Microsoft dividend dates, from the T+2 era into T+1","post_title":"How Stock Settlement Works Under T+1","post_url":"/blog/how-stock-settlement-works-t-plus-1#q-msft_dividends","columns":["ex_date","ex_date_label","record_date_label","pay_date_label","dividend_usd","ex_to_record_days"],"rows":[{"ex_date":"2023-08-16","ex_date_label":"Aug 16, 2023","record_date_label":"Aug 17, 2023","pay_date_label":"Sep 14, 2023","dividend_usd":0.68,"ex_to_record_days":1},{"ex_date":"2023-11-15","ex_date_label":"Nov 15, 2023","record_date_label":"Nov 16, 2023","pay_date_label":"Dec 14, 2023","dividend_usd":0.75,"ex_to_record_days":1},{"ex_date":"2024-02-14","ex_date_label":"Feb 14, 2024","record_date_label":"Feb 15, 2024","pay_date_label":"Mar 14, 2024","dividend_usd":0.75,"ex_to_record_days":1},{"ex_date":"2024-05-15","ex_date_label":"May 15, 2024","record_date_label":"May 16, 2024","pay_date_label":"Jun 13, 2024","dividend_usd":0.75,"ex_to_record_days":1},{"ex_date":"2024-08-15","ex_date_label":"Aug 15, 2024","record_date_label":"Aug 15, 2024","pay_date_label":"Sep 12, 2024","dividend_usd":0.75,"ex_to_record_days":0},{"ex_date":"2024-11-21","ex_date_label":"Nov 21, 2024","record_date_label":"Nov 21, 2024","pay_date_label":"Dec 12, 2024","dividend_usd":0.83,"ex_to_record_days":0},{"ex_date":"2025-02-20","ex_date_label":"Feb 20, 2025","record_date_label":"Feb 20, 2025","pay_date_label":"Mar 13, 2025","dividend_usd":0.83,"ex_to_record_days":0},{"ex_date":"2025-05-15","ex_date_label":"May 15, 2025","record_date_label":"May 15, 2025","pay_date_label":"Jun 12, 2025","dividend_usd":0.83,"ex_to_record_days":0},{"ex_date":"2025-08-21","ex_date_label":"Aug 21, 2025","record_date_label":"Aug 21, 2025","pay_date_label":"Sep 11, 2025","dividend_usd":0.83,"ex_to_record_days":0},{"ex_date":"2025-11-20","ex_date_label":"Nov 20, 2025","record_date_label":"Nov 20, 2025","pay_date_label":"Dec 11, 2025","dividend_usd":0.91,"ex_to_record_days":0},{"ex_date":"2026-02-19","ex_date_label":"Feb 19, 2026","record_date_label":"Feb 19, 2026","pay_date_label":"Mar 12, 2026","dividend_usd":0.91,"ex_to_record_days":0},{"ex_date":"2026-05-21","ex_date_label":"May 21, 2026","record_date_label":"May 21, 2026","pay_date_label":"Jun 11, 2026","dividend_usd":0.91,"ex_to_record_days":0},{"ex_date":"2026-08-20","ex_date_label":"Aug 20, 2026","record_date_label":"Aug 20, 2026","pay_date_label":"Sep 10, 2026","dividend_usd":0.91,"ex_to_record_days":0}],"shape":"series","sql":"SELECT\n    toString(ex_d)                        AS ex_date,\n    formatDateTime(ex_d, '%b %e, %Y')     AS ex_date_label,\n    formatDateTime(rec_d, '%b %e, %Y')    AS record_date_label,\n    formatDateTime(pay_d, '%b %e, %Y')    AS pay_date_label,\n    round(toFloat64(amount), 2)           AS dividend_usd,\n    dateDiff('day', ex_d, rec_d)          AS ex_to_record_days\nFROM\n(\n    SELECT\n        ex_dividend_date  AS ex_d,\n        max(record_date)  AS rec_d,\n        max(pay_date)     AS pay_d,\n        max(cash_amount)  AS amount\n    FROM global_markets.stocks_dividends\n    WHERE ticker = 'MSFT'\n      AND ex_dividend_date >= '2023-08-01'\n      AND record_date >= ex_dividend_date\n      AND pay_date > ex_dividend_date\n    GROUP BY ex_dividend_date\n)\nORDER BY ex_d","computed_at":"2026-08-22T04:13:45.591507+00:00","elapsed":0.039385585}