{"slug":"do-you-get-the-dividend-if-you-buy-on-the-ex-date","qid":"aapl_dividends","label":"aapl_dividends","post_title":"do-you-get-the-dividend-if-you-buy-on-the-ex-date","post_url":"/blog/do-you-get-the-dividend-if-you-buy-on-the-ex-date#q-aapl_dividends","columns":["ex_date","weekday","declared_label","ex_label","record_label","pay_label","cash_amount","days_ex_to_record","last_session_with_dividend","buy_on_ex_settles","settles_days_after_record","days_record_to_pay"],"rows":[{"ex_date":"2026-08-10","weekday":"Monday","declared_label":"Jul 30, 2026","ex_label":"Aug 10, 2026","record_label":"Mon, Aug 10","pay_label":"Aug 13","cash_amount":0.27,"days_ex_to_record":0,"last_session_with_dividend":"Fri, Aug 7","buy_on_ex_settles":"Tue, Aug 11","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2026-05-11","weekday":"Monday","declared_label":"Apr 30, 2026","ex_label":"May 11, 2026","record_label":"Mon, May 11","pay_label":"May 14","cash_amount":0.27,"days_ex_to_record":0,"last_session_with_dividend":"Fri, May 8","buy_on_ex_settles":"Tue, May 12","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2026-02-09","weekday":"Monday","declared_label":"Jan 29, 2026","ex_label":"Feb 9, 2026","record_label":"Mon, Feb 9","pay_label":"Feb 12","cash_amount":0.26,"days_ex_to_record":0,"last_session_with_dividend":"Fri, Feb 6","buy_on_ex_settles":"Tue, Feb 10","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2025-11-10","weekday":"Monday","declared_label":"Oct 30, 2025","ex_label":"Nov 10, 2025","record_label":"Mon, Nov 10","pay_label":"Nov 13","cash_amount":0.26,"days_ex_to_record":0,"last_session_with_dividend":"Fri, Nov 7","buy_on_ex_settles":"Tue, Nov 11","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2025-08-11","weekday":"Monday","declared_label":"Jul 31, 2025","ex_label":"Aug 11, 2025","record_label":"Mon, Aug 11","pay_label":"Aug 14","cash_amount":0.26,"days_ex_to_record":0,"last_session_with_dividend":"Fri, Aug 8","buy_on_ex_settles":"Tue, Aug 12","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2025-05-12","weekday":"Monday","declared_label":"May 1, 2025","ex_label":"May 12, 2025","record_label":"Mon, May 12","pay_label":"May 15","cash_amount":0.26,"days_ex_to_record":0,"last_session_with_dividend":"Fri, May 9","buy_on_ex_settles":"Tue, May 13","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2025-02-10","weekday":"Monday","declared_label":"Jan 30, 2025","ex_label":"Feb 10, 2025","record_label":"Mon, Feb 10","pay_label":"Feb 13","cash_amount":0.25,"days_ex_to_record":0,"last_session_with_dividend":"Fri, Feb 7","buy_on_ex_settles":"Tue, Feb 11","settles_days_after_record":1,"days_record_to_pay":3},{"ex_date":"2024-11-08","weekday":"Friday","declared_label":"Oct 31, 2024","ex_label":"Nov 8, 2024","record_label":"Mon, Nov 11","pay_label":"Nov 14","cash_amount":0.25,"days_ex_to_record":3,"last_session_with_dividend":"Thu, Nov 7","buy_on_ex_settles":"Mon, Nov 11","settles_days_after_record":0,"days_record_to_pay":3}],"shape":"series","sql":"SELECT\n    toString(d.ex_dt)                                    AS ex_date,\n    formatDateTime(d.ex_dt, '%W')                        AS weekday,\n    formatDateTime(d.decl_dt, '%b %e, %Y')               AS declared_label,\n    formatDateTime(d.ex_dt, '%b %e, %Y')                 AS ex_label,\n    formatDateTime(d.rec_dt, '%a, %b %e')                AS record_label,\n    formatDateTime(d.pay_dt, '%b %e')                    AS pay_label,\n    d.cash                                               AS cash_amount,\n    dateDiff('day', d.ex_dt, d.rec_dt)                   AS days_ex_to_record,\n    formatDateTime(px.prior_sess, '%a, %b %e')           AS last_session_with_dividend,\n    formatDateTime(px.next_sess, '%a, %b %e')            AS buy_on_ex_settles,\n    dateDiff('day', d.rec_dt, px.next_sess)              AS settles_days_after_record,\n    dateDiff('day', d.rec_dt, d.pay_dt)                  AS days_record_to_pay\nFROM\n(\n    SELECT\n        any(ex_dividend_date)                 AS ex_dt,\n        any(declaration_date)                 AS decl_dt,\n        any(record_date)                      AS rec_dt,\n        any(pay_date)                         AS pay_dt,\n        round(toFloat64(any(cash_amount)), 4) AS cash\n    FROM global_markets.stocks_dividends\n    WHERE ticker = 'AAPL'\n      AND ex_dividend_date >= '2024-06-01'\n      AND ex_dividend_date <  today() - 3\n    GROUP BY id\n) AS d\nINNER JOIN\n(\n    SELECT\n        sess,\n        lagInFrame(sess, 1)  OVER (ORDER BY sess ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS prior_sess,\n        leadInFrame(sess, 1) OVER (ORDER BY sess ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) AS next_sess\n    FROM\n    (\n        SELECT date AS sess\n        FROM global_markets.stocks_daily_aggs\n        WHERE ticker = 'AAPL'\n          AND date >= '2024-05-01'\n          AND date <  today()\n        GROUP BY date\n    )\n) AS px ON px.sess = d.ex_dt\nWHERE px.next_sess > px.sess\n  AND px.prior_sess >= toDate('2024-05-01')\nORDER BY d.ex_dt DESC\nLIMIT 8","computed_at":"2026-09-17T15:10:00.193081+00:00","elapsed":0.325956893}