The 2025 NBA trade deadline just won’t slow down. Mere hours after the Golden State Warriors landed Jimmy Butler, another former All-Star forward is also on the move. Brandon Ingram, the 27-year-old small forward who has spent the past six years with the New Orleans Pelicans, is headed to the Toronto Raptors in a trade for Bruce Brown, Kelly Olynyk, a first-round pick and a second-round pick, according to ESPN’s Shams Charania.
The deal ends a trade saga that had been dragging on since last offseason. Ingram has been eligible for a contract extension since the summer, but New Orleans did not seem especially interested in re-signing him for the hefty salary he reportedly expected. They sought a trade throughout the offseason, and when one didn’t materialize, they were forced to bring him into the season on their roster. Now, they’ve found the trade they were looking for.
So how did the Raptors and Pelicans do in the deal? Let’s hand out some grades.
Toronto Raptors: B-
Ingram is a flawed player. At times, he has flashed brilliance as both a playmaker and a defender, but he’s never maintained that production consistently. He’s played the best basketball of his career when his 3-point volume has been high, yet after averaging over six 3-point attempts per game in his first two Pelicans seasons, he dipped below four in his next three. He started taking 3s again this season before a sprained ankle knocked him out for the past two months, but it’s unclear if that will sustain over a long sample. Ingram, for the bulk of his career, has really just wanted to create mid-range jumpers.
Now, that was more of a problem on a Pelicans team that has been designed to fit around Zion Williamson’s rim pressure. In Toronto, a mid-range shot creator holds a bit more value. Scottie Barnes is the best player the Raptors have, but he doesn’t fit the traditional, late-game shot-maker mold. Toronto ranks 23rd in the NBA in clutch offense, and has not been even above-average on that front for three years running. Toronto’s overall 3-point volume is far too low. Only the Nuggets shoot fewer 3s. But their shooting, both inside the arc and beyond it, improved with Ingram. Introducing any one-on-one shot creation here was going to make a difference.
The questions we do need to raise here are financial. Ingram is obviously set for free agency this offseason. Re-signing him isn’t going to be cheap, but there is real value in gaining Ingram’s Bird Rights. There just isn’t much cap space available this summer, save for Brooklyn’s, so it’s not as though Ingram will have several destinations he can pursue while leaving the Raptors high and dry. That market could help Toronto get Ingram at a bit of a discount.
Brandon Ingram trade: Pelicans send former All-Star to Raptors for Bruce Brown, Kelly Olynyk, picks
Sam Quinn
An approach that might make sense for both sides here would be a shorter-term deal. Ingram is still only 27, and could reach free agency again in a more fertile market while still in his prime. The Raptors, meanwhile, would have the option of getting Ingram off of their books relatively quickly if the partnership doesn’t wind up working out.
As it stands right now, Toronto has around $50 million in room beneath the projected luxury tax line next season. That has to cover not only Ingram, but their lottery pick in this summer’s NBA Draft and any other roster moves they need to make if you assume the Raptors aren’t paying the tax for this roster. At this point, it’s hard to imagine they would. The upside is fairly limited.
That’s another concern here, though it isn’t limited to just this move. A few years ago, the Raptors had a bunch of wings (Barnes, Pascal Siakam, OG Anunoby, Gary Trent Jr.), one small guard (Fred VanVleet) and no superstar. Masai Ujiri has spent the past year and change tearing that roster down, only to now wind up in a very similar place. He has a bunch of wings (Barnes, Ingram, RJ Barrett, Gradey Dick), one small guard (Immanuel Quickley) and no superstar.
Again, the roster doesn’t have to be solved today. This is a lost season for Toronto, currently 16-35. But there seems to be an overall lack of direction here. Toronto has a number of good players but no great ones yet. Perhaps their lottery pick this offseason can offer some clarity on this front. Of course, introducing Ingram into the mix, assuming he’s healthy enough to play soon, could impact that pick. As it stands right now, Toronto is in line for the sixth-best lottery odds. With Ingram, they are certainly better than the Brooklyn Nets, who are only one win ahead of them at the moment. Depending on who the Chicago Bulls dump on Thursday, they could also lose their way past the Raptors.
But the overall asset play here was reasonably strong. Ingram has seemingly fallen out of favor in a league that is moving away from max salaries for high-end scorers who don’t have well-rounded games, but he is still a very good player, and the Raptors didn’t even have to give up a good first-round pick to get him. Instead of any of their own picks, they’re sending the Pelicans Indiana’s first-rounder next season that they got in the Siakam trade. That’s likely to come toward the middle or back of the round. Not bad for a former No. 2 overall pick that is still in his prime and playing reasonably well.
We still need to see the Raptors land on an overall direction, but in a vacuum, this trade makes sense.
New Orleans Pelicans: C+
The asset return here is flimsy. As we covered above, the pick New Orleans is getting doesn’t look great on paper, and it carries a top-four protection, which limits the upside for the Pelicans even if things do go south in Indiana. New Orleans also has to take on the contract of Kelly Olynyk here. That’s around $13.4 million for next season for a declining big man. In a perfect world, the Pelicans only would have taken on expiring money, though the thought of giving Zion Williamson a shooting big man does make plenty of sense for next season.
But ultimately, the Pelicans knew that the Ingram-Williamson fit did not work. Williamson is at his best as an offensive hub. He needs the ball in his hands, and when he doesn’t have it, the ball handlers that do need to be ready to get it to him at a moment’s notice. That just isn’t Ingram. He wants to pound the rock and create his own shots, not build a two-man game designed to generate layups and dunks for a teammate.
New Orleans has done well over the past few years to surround Williamson with such teammates outside of Ingram. Trey Murphy, Herb Jones, C.J. McCollum and Jose Alvarado all make sense there. Ingram did not, and New Orleans even tried to replace his shotmaking with Dejounte Murray over the summer (though an Achilles injury has messed with those plans). Murphy, in particular, has grown into a budding star of late, and the Pelicans needed to clear a long-term slot in their starting lineup for him. It was time for the two sides to part.
NBA trade tracker: Follow every deadline deal as Jimmy Butler, Brandon Ingram find new homes
Colin Ward-Henninger
From that perspective, this trade is better than letting Ingram walk for nothing. They could have potentially worked with him on a sign-and-trade over the summer. But if nobody was interested in paying more than this during the season, what was going to change in July? It just seems as though the league places a far lower valuation on Ingram today than it once did.
That’s what stings here for the Pelicans. At one time, Ingram looked like a potential superstar. It wasn’t long ago that the Nets had Kevin Durant on the trading block and critics debated whether or not the Pelicans should make Ingram available. His value has declined pretty precipitously, but not in a way the Pelicans could have reasonably predicted. He didn’t get worse. The financial rules changed, and that forced teams to reconsider what they found important.
So the return is disappointing on paper, but in ways that make sense. It’s the sort of move the Pelicans had to make even if they aren’t especially happy with what they got back. If they can just get Williamson back on the court for a sustained period, they still do have a group of players around him that can win. There’s still work to do, but this was a necessary step in the right direction.
require.config("baseUrl":"https:\/\/sportsfly.cbsistatic.com\/fly-0870\/bundles\/sportsmediajs\/js-build","config":"version":"fly\/components\/accordion":"1.0","fly\/components\/alert":"1.0","fly\/components\/base":"1.0","fly\/components\/carousel":"1.0","fly\/components\/dropdown":"1.0","fly\/components\/fixate":"1.0","fly\/components\/form-validate":"1.0","fly\/components\/image-gallery":"1.0","fly\/components\/iframe-messenger":"1.0","fly\/components\/load-more":"1.0","fly\/components\/load-more-article":"1.0","fly\/components\/load-more-scroll":"1.0","fly\/components\/loading":"1.0","fly\/components\/modal":"1.0","fly\/components\/modal-iframe":"1.0","fly\/components\/network-bar":"1.0","fly\/components\/poll":"1.0","fly\/components\/search-player":"1.0","fly\/components\/social-button":"1.0","fly\/components\/social-counts":"1.0","fly\/components\/social-links":"1.0","fly\/components\/tabs":"1.0","fly\/components\/video":"1.0","fly\/libs\/easy-xdm":"2.4.17.1","fly\/libs\/jquery.cookie":"1.2","fly\/libs\/jquery.throttle-debounce":"1.1","fly\/libs\/jquery.widget":"1.9.2","fly\/libs\/omniture.s-code":"1.0","fly\/utils\/jquery-mobile-init":"1.0","fly\/libs\/jquery.mobile":"1.3.2","fly\/libs\/backbone":"1.0.0","fly\/libs\/underscore":"1.5.1","fly\/libs\/jquery.easing":"1.3","fly\/managers\/ad":"2.0","fly\/managers\/components":"1.0","fly\/managers\/cookie":"1.0","fly\/managers\/debug":"1.0","fly\/managers\/geo":"1.0","fly\/managers\/gpt":"4.3","fly\/managers\/history":"2.0","fly\/managers\/madison":"1.0","fly\/managers\/social-authentication":"1.0","fly\/utils\/data-prefix":"1.0","fly\/utils\/data-selector":"1.0","fly\/utils\/function-natives":"1.0","fly\/utils\/guid":"1.0","fly\/utils\/log":"1.0","fly\/utils\/object-helper":"1.0","fly\/utils\/string-helper":"1.0","fly\/utils\/string-vars":"1.0","fly\/utils\/url-helper":"1.0","libs\/jshashtable":"2.1","libs\/select2":"3.5.1","libs\/jsonp":"2.4.0","libs\/jquery\/mobile":"1.4.5","libs\/modernizr.custom":"2.6.2","libs\/velocity":"1.2.2","libs\/dataTables":"1.10.6","libs\/dataTables.fixedColumns":"3.0.4","libs\/dataTables.fixedHeader":"2.1.2","libs\/dateformat":"1.0.3","libs\/waypoints\/infinite":"3.1.1","libs\/waypoints\/inview":"3.1.1","libs\/waypoints\/jquery.waypoints":"3.1.1","libs\/waypoints\/sticky":"3.1.1","libs\/jquery\/dotdotdot":"1.6.1","libs\/jquery\/flexslider":"2.1","libs\/jquery\/lazyload":"1.9.3","libs\/jquery\/maskedinput":"1.3.1","libs\/jquery\/marquee":"1.3.1","libs\/jquery\/numberformatter":"1.2.3","libs\/jquery\/placeholder":"0.2.4","libs\/jquery\/scrollbar":"0.1.6","libs\/jquery\/tablesorter":"2.0.5","libs\/jquery\/touchswipe":"1.6.18","libs\/jquery\/ui\/jquery.ui.core":"1.11.4","libs\/jquery\/ui\/jquery.ui.draggable":"1.11.4","libs\/jquery\/ui\/jquery.ui.mouse":"1.11.4","libs\/jquery\/ui\/jquery.ui.position":"1.11.4","libs\/jquery\/ui\/jquery.ui.slider":"1.11.4","libs\/jquery\/ui\/jquery.ui.sortable":"1.11.4","libs\/jquery\/ui\/jquery.ui.touch-punch":"0.2.3","libs\/jquery\/ui\/jquery.ui.autocomplete":"1.11.4","libs\/jquery\/ui\/jquery.ui.accordion":"1.11.4","libs\/jquery\/ui\/jquery.ui.tabs":"1.11.4","libs\/jquery\/ui\/jquery.ui.menu":"1.11.4","libs\/jquery\/ui\/jquery.ui.dialog":"1.11.4","libs\/jquery\/ui\/jquery.ui.resizable":"1.11.4","libs\/jquery\/ui\/jquery.ui.button":"1.11.4","libs\/jquery\/ui\/jquery.ui.tooltip":"1.11.4","libs\/jquery\/ui\/jquery.ui.effects":"1.11.4","libs\/jquery\/ui\/jquery.ui.datepicker":"1.11.4","shim":"liveconnection\/managers\/connection":"deps":["liveconnection\/libs\/sockjs-0.3.4"],"liveconnection\/libs\/sockjs-0.3.4":"exports":"SockJS","libs\/setValueFromArray":"exports":"set","libs\/getValueFromArray":"exports":"get","fly\/libs\/jquery.mobile-1.3.2":["version!fly\/utils\/jquery-mobile-init"],"libs\/backbone.marionette":"deps":["jquery","version!fly\/libs\/underscore","version!fly\/libs\/backbone"],"exports":"Marionette","fly\/libs\/underscore-1.5.1":"exports":"_","fly\/libs\/backbone-1.0.0":"deps":["version!fly\/libs\/underscore","jquery"],"exports":"Backbone","libs\/jquery\/ui\/jquery.ui.tabs-1.11.4":["jquery","version!libs\/jquery\/ui\/jquery.ui.core","version!fly\/libs\/jquery.widget"],"libs\/jquery\/flexslider-2.1":["jquery"],"libs\/dataTables.fixedColumns-3.0.4":["jquery","version!libs\/dataTables"],"libs\/dataTables.fixedHeader-2.1.2":["jquery","version!libs\/dataTables"],"https:\/\/sports.cbsimg.net\/js\/CBSi\/app\/VideoPlayer\/AdobePass-min.js":["https:\/\/sports.cbsimg.net\/js\/CBSi\/util\/Utils-min.js"],"map":"*":"adobe-pass":"https:\/\/sports.cbsimg.net\/js\/CBSi\/app\/VideoPlayer\/AdobePass-min.js","facebook":"https:\/\/connect.facebook.net\/en_US\/sdk.js","facebook-debug":"https:\/\/connect.facebook.net\/en_US\/all\/debug.js","google":"https:\/\/apis.google.com\/js\/plusone.js","google-csa":"https:\/\/www.google.com\/adsense\/search\/async-ads.js","google-javascript-api":"https:\/\/www.google.com\/jsapi","google-client-api":"https:\/\/accounts.google.com\/gsi\/client","gpt":"https:\/\/securepubads.g.doubleclick.net\/tag\/js\/gpt.js","hlsjs":"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/hls.js\/1.0.7\/hls.js","recaptcha":"https:\/\/www.google.com\/recaptcha\/api.js?onload=loadRecaptcha&render=explicit","recaptcha_ajax":"https:\/\/www.google.com\/recaptcha\/api\/js\/recaptcha_ajax.js","supreme-golf":"https:\/\/sgapps-staging.supremegolf.com\/search\/assets\/js\/bundle.js","taboola":"https:\/\/cdn.taboola.com\/libtrc\/cbsinteractive-cbssports\/loader.js","twitter":"https:\/\/platform.twitter.com\/widgets.js","video-avia":"https:\/\/sports.cbsimg.net\/fly\/js\/avia-js\/2.41.0\/player\/avia.min.js","video-avia-ui":"https:\/\/sports.cbsimg.net\/fly\/js\/avia-js\/2.41.0\/plugins\/ui\/avia.ui.min.js","video-avia-gam":"https:\/\/sports.cbsimg.net\/fly\/js\/avia-js\/2.41.0\/plugins\/gam\/avia.gam.min.js","video-avia-hls":"https:\/\/sports.cbsimg.net\/fly\/js\/avia-js\/2.41.0\/plugins\/hls\/avia.hls.min.js","video-avia-playlist":"https:\/\/sports.cbsimg.net\/fly\/js\/avia-js\/2.41.0\/plugins\/playlist\/avia.playlist.min.js","video-ima3":"https:\/\/imasdk.googleapis.com\/js\/sdkloader\/ima3.js","video-ima3-dai":"https:\/\/imasdk.googleapis.com\/js\/sdkloader\/ima3_dai.js","video-utils":"https:\/\/sports.cbsimg.net\/js\/CBSi\/util\/Utils-min.js","video-vast-tracking":"https:\/\/sports.cbsimg.net\/fly\/js\/sb55\/vast-js\/vtg-vast-client.js","waitSeconds":300);