to your HTML Add class="sortable" to any table you'd like to make sortable Click on the headers to sort Thanks to many, many people for contributions and suggestions. Licenced as X11: http://www.kryogenix.org/code/browser/licence.html This basically means: do what you want with it. */ var stIsIE = /*@cc_on!@*/false; sorttable = { init: function() { // quit if this function has already been called if (arguments.callee.done) return; // flag this function so we don't do the same thing twice arguments.callee.done = true; // kill the timer if (_timer) clearInterval(_timer); if (!document.createElement || !document.getElementsByTagName) return; sorttable.DATE_RE = /^(\d\d?)[\/\.-](\d\d?)[\/\.-]((\d\d)?\d\d)$/; forEach(document.getElementsByTagName('table'), function(table) { if (table.className.search(/\bsortable\b/) != -1) { sorttable.makeSortable(table); } }); }, makeSortable: function(table) { if (table.getElementsByTagName('thead').length == 0) { // table doesn't have a tHead. Since it should have, create one and // put the first table row in it. the = document.createElement('thead'); the.appendChild(table.rows[0]); table.insertBefore(the,table.firstChild); } // Safari doesn't support table.tHead, sigh if (table.tHead == null) table.tHead = table.getElementsByTagName('thead')[0]; if (table.tHead.rows.length != 1) return; // can't cope with two header rows // Sorttable v1 put rows with a class of "sortbottom" at the bottom (as // "total" rows, for example). This is B&R, since what you're supposed // to do is put them in a tfoot. So, if there are sortbottom rows, // for backwards compatibility, move them to tfoot (creating it if needed). sortbottomrows = []; for (var i=0; i
Every three months, we take a snapshot of the expectations for future earnings in the S&P 500 (Index: SPX) at approximately the midpoint of the current quarter, shortly after most U.S. firms have announced their previous quarter's earnings.
The latest snapshot comes 87 days after the Winter 2025 snapshot. Since that snapshot, the outlook for earnings has dimmed, with significantly lower growth anticipated in the quarters ahead.
The change over the past three months is larger than the typical pattern that earnings forecasts follow. Here, expectations for future earnings tend to erode with each later snapshot, usually by relatively small amounts from quarter to quarter. It is unusual for the earnings forecast to improve from snapshot to snapshot.
Two major events have occurred during the last three months that have knocked the earnings forecast lower. First, a deflation phase for the AI-bubble got underway, starting on 21 February 2025 when the company behind China's DeepSeek Artificial Intelligence (AI) system announced they would make its code open source. That serious new competition put a cap on the potential earnings of the "Big Tech" firms making big AI-related investments.
Second, President Trump's 'Liberation Day' tariff announcement after the market closed on 2 April 2025 knocked the earnings outlook for many other firms lower, at least through the time of this snapshot. This snapshot only captures a little over a week's worth of the recent surge of deal-making momentum that's driven stock prices higher in recent weeks.
Of the two events, the deflation of the AI-bubble has been the bigger force shaping future earnings expectations.
The following chart, covering how earnings expectations have changed from the end of 2021 through 9 May 2025:
The current projection for the S&P 500's earnings per share through the end of 2025 is $241.33, which would represent 14.8% year-over-year earnings growth over December 2024's finalized level of $210.17.
Looking further forward through the index' expected earnings per share through the end of 2026, Standard & Poor projects the S&P 500's earnings per share will be $276.88, down 4.4% from its initial estimate of $289.64 per share.
Silverblatt, Howard. Standard & Poor. S&P 500 Earnings and Estimates. [Excel Spreadsheet]. 9 May 2025. Accessed 16 May 2025.
Image Credit: Microsoft Copilot Designer. Prompt: "A crystal ball with the word 'SP 500' written inside it". And 'Earnings' written above it, which we added.
Labels: earnings, forecasting
Welcome to the blogosphere's toolchest! Here, unlike other blogs dedicated to analyzing current events, we create easy-to-use, simple tools to do the math related to them so you can get in on the action too! If you would like to learn more about these tools, or if you would like to contribute ideas to develop for this blog, please e-mail us at:
ironman at politicalcalculations
Thanks in advance!
Closing values for previous trading day.
This site is primarily powered by:
The tools on this site are built using JavaScript. If you would like to learn more, one of the best free resources on the web is available at W3Schools.com.