{"slug":"split-adjusted-price-history","qid":"ko_dividend_factor","label":"Dividend adjustment factors on every KO ex-date since 2019","post_title":"How split-adjusted price history works","post_url":"/blog/split-adjusted-price-history#q-ko_dividend_factor","columns":["ex_date","ex_label","dividend_pct","cumulative_pct"],"rows":[{"ex_date":"2019-03-14","ex_label":"Mar 14, 2019","dividend_pct":0.865,"cumulative_pct":0.87},{"ex_date":"2019-06-13","ex_label":"Jun 13, 2019","dividend_pct":0.775,"cumulative_pct":1.63},{"ex_date":"2019-09-13","ex_label":"Sep 13, 2019","dividend_pct":0.726,"cumulative_pct":2.35},{"ex_date":"2019-11-29","ex_label":"Nov 29, 2019","dividend_pct":0.741,"cumulative_pct":3.07},{"ex_date":"2020-03-13","ex_label":"Mar 13, 2020","dividend_pct":0.869,"cumulative_pct":3.91},{"ex_date":"2020-06-12","ex_label":"Jun 12, 2020","dividend_pct":0.9,"cumulative_pct":4.78},{"ex_date":"2020-09-14","ex_label":"Sep 14, 2020","dividend_pct":0.803,"cumulative_pct":5.54},{"ex_date":"2020-11-30","ex_label":"Nov 30, 2020","dividend_pct":0.778,"cumulative_pct":6.28},{"ex_date":"2021-03-12","ex_label":"Mar 12, 2021","dividend_pct":0.825,"cumulative_pct":7.05},{"ex_date":"2021-06-14","ex_label":"Jun 14, 2021","dividend_pct":0.748,"cumulative_pct":7.75},{"ex_date":"2021-09-14","ex_label":"Sep 14, 2021","dividend_pct":0.749,"cumulative_pct":8.44},{"ex_date":"2021-11-30","ex_label":"Nov 30, 2021","dividend_pct":0.77,"cumulative_pct":9.14},{"ex_date":"2022-03-14","ex_label":"Mar 14, 2022","dividend_pct":0.76,"cumulative_pct":9.83},{"ex_date":"2022-06-14","ex_label":"Jun 14, 2022","dividend_pct":0.717,"cumulative_pct":10.48},{"ex_date":"2022-09-15","ex_label":"Sep 15, 2022","dividend_pct":0.724,"cumulative_pct":11.13},{"ex_date":"2022-11-30","ex_label":"Nov 30, 2022","dividend_pct":0.704,"cumulative_pct":11.75},{"ex_date":"2023-03-16","ex_label":"Mar 16, 2023","dividend_pct":0.761,"cumulative_pct":12.43},{"ex_date":"2023-06-15","ex_label":"Jun 15, 2023","dividend_pct":0.756,"cumulative_pct":13.09},{"ex_date":"2023-09-14","ex_label":"Sep 14, 2023","dividend_pct":0.787,"cumulative_pct":13.77},{"ex_date":"2023-11-30","ex_label":"Nov 30, 2023","dividend_pct":0.79,"cumulative_pct":14.45},{"ex_date":"2024-03-14","ex_label":"Mar 14, 2024","dividend_pct":0.794,"cumulative_pct":15.13},{"ex_date":"2024-06-14","ex_label":"Jun 14, 2024","dividend_pct":0.77,"cumulative_pct":15.78},{"ex_date":"2024-09-13","ex_label":"Sep 13, 2024","dividend_pct":0.681,"cumulative_pct":16.36},{"ex_date":"2024-11-29","ex_label":"Nov 29, 2024","dividend_pct":0.753,"cumulative_pct":16.99},{"ex_date":"2025-03-14","ex_label":"Mar 14, 2025","dividend_pct":0.733,"cumulative_pct":17.6},{"ex_date":"2025-06-13","ex_label":"Jun 13, 2025","dividend_pct":0.706,"cumulative_pct":18.18},{"ex_date":"2025-09-15","ex_label":"Sep 15, 2025","dividend_pct":0.761,"cumulative_pct":18.8},{"ex_date":"2025-12-01","ex_label":"Dec 1, 2025","dividend_pct":0.697,"cumulative_pct":19.37},{"ex_date":"2026-03-13","ex_label":"Mar 13, 2026","dividend_pct":0.683,"cumulative_pct":19.92},{"ex_date":"2026-06-15","ex_label":"Jun 15, 2026","dividend_pct":0.641,"cumulative_pct":20.43}],"shape":"series","sql":"WITH\npx AS (\n    SELECT\n        date,\n        toFloat64(any(close)) AS c\n    FROM global_markets.stocks_daily_aggs\n    WHERE ticker = 'KO'\n      AND date >= '2018-10-01'\n      AND date < today()\n    GROUP BY date\n),\nlagged AS (\n    SELECT\n        date,\n        lagInFrame(c) OVER (ORDER BY date ROWS BETWEEN 1 PRECEDING AND CURRENT ROW) AS prior_close\n    FROM px\n),\ndivs AS (\n    SELECT\n        ex_dividend_date            AS d_date,\n        toFloat64(max(cash_amount)) AS cash\n    FROM global_markets.stocks_dividends\n    WHERE ticker = 'KO'\n      AND ex_dividend_date >= '2019-01-01'\n      AND ex_dividend_date < today()\n      AND cash_amount > 0\n    GROUP BY ex_dividend_date\n)\nSELECT\n    toString(divs.d_date)                           AS ex_date,\n    formatDateTime(divs.d_date, '%b %e, %Y')        AS ex_label,\n    round(100 * divs.cash / lagged.prior_close, 3)  AS dividend_pct,\n    round(100 * (1 - exp(sum(log(1 - divs.cash / lagged.prior_close))\n        OVER (ORDER BY divs.d_date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW))), 2) AS cumulative_pct\nFROM divs\nINNER JOIN lagged ON lagged.date = divs.d_date\nWHERE lagged.prior_close > 0\nORDER BY divs.d_date","computed_at":"2026-08-22T04:22:04.315309+00:00","elapsed":0.115976545}