{"slug":"how-companies-execute-buybacks","qid":"share_change","label":"Three-year change in diluted share count, ten household names","post_title":"How Companies Execute Buybacks: Rule 10b-18","post_url":"/blog/how-companies-execute-buybacks#q-share_change","columns":["symbol","shares_3y_ago_m","shares_latest_m","shares_change_pct"],"rows":[{"symbol":"WFC","shares_3y_ago_m":3837,"shares_latest_m":3224,"shares_change_pct":-16},{"symbol":"AAPL","shares_3y_ago_m":16326,"shares_latest_m":14810,"shares_change_pct":-9.3},{"symbol":"JNJ","shares_3y_ago_m":2664,"shares_latest_m":2429,"shares_change_pct":-8.8},{"symbol":"GOOGL","shares_3y_ago_m":13159,"shares_latest_m":12230,"shares_change_pct":-7.1},{"symbol":"T","shares_3y_ago_m":7587,"shares_latest_m":7179,"shares_change_pct":-5.4},{"symbol":"CVX","shares_3y_ago_m":1940,"shares_latest_m":1856,"shares_change_pct":-4.3},{"symbol":"PG","shares_3y_ago_m":2484,"shares_latest_m":2424,"shares_change_pct":-2.4},{"symbol":"KO","shares_3y_ago_m":4350,"shares_latest_m":4313,"shares_change_pct":-0.9},{"symbol":"MSFT","shares_3y_ago_m":7472,"shares_latest_m":7460,"shares_change_pct":-0.2},{"symbol":"XOM","shares_3y_ago_m":4205,"shares_latest_m":4305,"shares_change_pct":2.4}],"shape":"ranking","sql":"SELECT\n    symbol,\n    shares_3y_ago_m,\n    shares_latest_m,\n    round(100 * (shares_latest_m - shares_3y_ago_m) / shares_3y_ago_m, 1) AS shares_change_pct\nFROM\n(\n    SELECT\n        symbol,\n        round(argMaxIf(shares, (filing_date, period_end), period_end <= subtractYears(today(), 3)) / 1e6, 0) AS shares_3y_ago_m,\n        round(argMax(shares, (filing_date, period_end)) / 1e6, 0)                                           AS shares_latest_m\n    FROM\n    (\n        SELECT\n            arrayJoin(tickers)                    AS symbol,\n            filing_date,\n            period_end,\n            toFloat64(diluted_shares_outstanding) AS shares\n        FROM global_markets.stocks_income_statements\n        WHERE timeframe = 'quarterly'\n          AND period_end >= subtractYears(today(), 4)\n          AND diluted_shares_outstanding > 0\n          AND hasAny(tickers, ['AAPL', 'MSFT', 'GOOGL', 'JNJ', 'PG', 'KO', 'XOM', 'CVX', 'WFC', 'T'])\n    )\n    WHERE symbol IN ('AAPL', 'MSFT', 'GOOGL', 'JNJ', 'PG', 'KO', 'XOM', 'CVX', 'WFC', 'T')\n    GROUP BY symbol\n)\nWHERE shares_3y_ago_m > 0\nORDER BY shares_change_pct","computed_at":"2026-08-22T04:13:25.634444+00:00","elapsed":0.05387935}