Carson Macedo Claims Wild Brad Doty Classic

Carson Macedo wins the Brad Doty Classic Mike Campbell Photo

By Alex Nieten
ATTICA, OH (July 15, 2025) – You name it, and it likely happened at the 2025 Ohio Logistics Brad Doty Classic presented by dac Vitamins and Minerals.

Tuesday night at Attica Raceway Park will be one fans are talking about for a long time. Four different leaders. Charges through the field. Intense battles for the top spot. Leaders spinning. Once the green flag flew, the World of Outlaws NOS Energy Drink Sprint Car Series action was endless.

Early on Michael “Buddy” Kofoid took command. Traffic allowed polesitter Kyle Larson to snatch the lead for two laps before Kofoid reclaimed it. Sheldon Haudenschild then surged into contention, and he and Kofoid nearly made contact as Kofoid tripped on the Turn 4 cushion and did a 360. That allowed Haudenschild to take the lead, but heartbreak hit the Wooster, OH native with four laps remaining as the cushion also bit him and he spun after looking destined to win.

After all that calamity, it was Carson Macedo inheriting P1 due to Haudenschild’s spin. The Lemoore, CA native started back in eighth and made his way forward with some daring moves that included a three-wide pass to steal third. After getting to the runner-up spot, Haudenschild gave Macedo a gift, and he had no plans of giving it back.

Macedo ripped ahead on the restart. Kofoid gave him one brief challenge in an effort at redemption, but he couldn’t find enough speed. The Jason Johnson Racing pilot held on and added his name to the history books as a Brad Doty Classic winner.

“I really felt like I was running pretty hard on the top, about as hard as I could and maybe even overdriving it,” Macedo said. “But Sheldon was driving like four times harder than me, so I actually backed it down thinking maybe something would happen. He almost got over the edge one time in (Turns) 1 and 2. Then he ended up getting over the curb. I mean, it was no fault of his own. He was doing a great job, just really tricky and treacherous and easy to get over it. It was kind of marbly really, and that’s why guys were able to slide and almost clear you.

“Hats off to Philip Dietz, Adam Zimmerman, and Robby McQuinn. We changed a few things tonight that we thought might be a little bit better, and I think it definitely seemed to be really good there. I was able to get my wing back and get squeezed back in the track late in the race. Hats off to them. Just a cool race to win.”

The victory is the sixth of the 2025 campaign for Macedo and his second in the last three races. The 29-year-old became the 26th different winner of “The Doty” since the event first began in 1989. He joined Tyler Walker, Jason Meyers, and Kyle Larson as the fourth Californian to come out on top. He had won at Attica with FAST in 2017 and the All Star Circuit of Champions (ASCoC) in 2018, but Tuesday was his first at the 1/3 mile with The Greatest Show on Dirt.

The runner-up spot went to Buddy Kofoid after he led the most laps aboard the Roth Motorsports No. 83. The Penngrove, CA native will no doubt be left thinking what could’ve been after having such a strong car and spinning while fighting for the lead with Haudenschild. Even with looping it, Kofoid still salvaged his ninth consecutive podium as he continues to build momentum.

“I kind of saw him (Haudenschild) and figured if I stayed where I was, he was going to get into me,” Kofoid said of when he spun. “And I didn’t want to lift for him, so I figured if I could get around him, I could be okay. Then we were just a little tight, and it just grabbed me wrong and pulled me over but glad to keep going. Once I got behind those guys I feel like I could do the opposite of what they were doing, and my car got actually even better. I still feel like we had the car to beat, just the cards didn’t fall our way.”

The final position on the podium went to Donny Schatz after a remarkable charge toward the front. The 10-time Series champion took the Tony Stewart/Curb Agajanian Racing No. 15 from 16th to third. It marked the second straight season he’s marched from outside the top 10 to the podium. The performance supplies Schatz with momentum as he prepares to chase a record-tying seventh Kings Royal crown later this week.

“I think a lot of guys made mistakes,” Schatz observed during his run to the front. “These Carquest/Advance guys had the car really good here. Obviously the longer the race went the better we got. I think the cushion was pretty treacherous with several people leading it, and it bit them. If things would’ve fallen our way a little bit, I don’t know if the yellow would’ve come out if we’d have been better or not. That’s part of this race. Forty laps here is pretty grueling. The guys did a great job. We salvaged a pretty good night, and hopefully it turns into a pretty good week.”

Logan Schuchart and Kyle Larson completed the top five.

David Gravel made it a dozen Simpson Quick Times in 2025 during Honest Abe Roofing Qualifying presented by Jon & Janet Wright.

NOS Energy Drink Heat Races presented by Kistler Racing Products belonged to Buddy Kofoid (NOS Energy Drink Heat One), Sheldon Haudenschild (Real American Beer Heat Two), David Gravel (WIX Filters Heat Three), and Kyle Larson (TheGreatestStoreonDirt.com Heat Four).

The SPA Technique #1 Redraw went to Kyle Larson.

Larson also topped the Toyota Dash presented by Racing Optics.

James McFadden won the Micro-Lite Last Chance Showdown presented by UUI.

The Smith Titanium Brake Systems Break of the Race went to Sheldon Haudenschild.

UP NEXT: The World of Outlaws NOS Energy Drink Sprint Cars head to Eldora Speedway for the Knight Before on Friday, July 18 and the 42nd running of the Kings Royal, which will award the winner a massive $200,000 payday. For tickets, CLICK HERE.

If you can’t make it to the track, catch every lap live on DIRTVision.

FEATURE RESULTS:

NOS Energy Drink Feature (40 Laps): 1. 41-Carson Macedo[8]; 2. 83-Michael Kofoid[2]; 3. 15-Donny Schatz[16]; 4. 1S-Logan Schuchart[6]; 5. 57-Kyle Larson[1]; 6. 2-David Gravel[7]; 7. 18T-Tanner Holmes[14]; 8. 2C-Cole Macedo[4]; 9. 18-Giovanni Scelzi[10]; 10. 7S-Chris Windom[13]; 11. 4-Zane DeVault[5]; 12. 19H-Joel Myers Jr[20]; 13. 32-Bryce Lucius[18]; 14. 17-Sheldon Haudenschild[3]; 15. 7N-Darin Naida[12]; 16. 88-Tanner Thorson[23]; 17. 28M-Conner Morrell[25]; 18. 6-Zach Hampton[22]; 19. O9-Craig Mintz[24]; 20. 23-Garet Williamson[19]; 21. 21-James McFadden[21]; 22. 11N-Kasey Jedrzejek[17]; 23. 33W-Cap Henry[15]; 24. 17B-Bill Balog[11]; 25. 29-Zeth Sabo[9]

MicroLite Last Chance Showdown (12 Laps): 1. 21-James McFadden[1]; 2. 6-Zach Hampton[3]; 3. 88-Tanner Thorson[9]; 4. O9-Craig Mintz[4]; 5. 35-Stuart Brubaker[8]; 6. 16-DJ Foos[6]; 7. 99-Skylar Gee[10]; 8. 5-Kody Brewer[13]; 9. W20-Greg Wilson[15]; 10. 28M-Conner Morrell[12]; 11. 101-Kalib Henry[5]; 12. 21H-Brady Bacon[7]; 13. 21K-Larry Kingseed Jr[2]; 14. 15K-Creed Kemenah[11]; 15. 55-Hunter Schuerenberg[14]

C Feature (10 Laps): 1. 55-Hunter Schuerenberg[1]; 2. W20-Greg Wilson[9]; 3. 22-Brandon Spithaler[7]; 4. 8T-Tanner Tecco[11]; 5. X-Mike Keegan[4]; 6. 15C-Chris Andrews[5]; 7. 3Z-Brock Zearfoss[6]; 8. 3J-Trey Jacobs[2]; 9. 19P-Paige Polyak[3]; 10. 19-TJ Michael[8]; 11. 25R-Jordan Ryan[10]; 12. 17GP-Tim Shaffer[12]

Toyota Dash (8 Laps): 1. 57-Kyle Larson[1]; 2. 83-Michael Kofoid[2]; 3. 17-Sheldon Haudenschild[3]; 4. 2C-Cole Macedo[4]; 5. 4-Zane DeVault[7]; 6. 1S-Logan Schuchart[5]; 7. 2-David Gravel[8]; 8. 41-Carson Macedo[6]

Heat 1 (10 Laps): 1. 83-Michael Kofoid[1]; 2. 2C-Cole Macedo[2]; 3. 29-Zeth Sabo[3]; 4. 7S-Chris Windom[7]; 5. 11N-Kasey Jedrzejek[4]; 6. 6-Zach Hampton[10]; 7. 21H-Brady Bacon[6]; 8. 15K-Creed Kemenah[8]; 9. 55-Hunter Schuerenberg[5]; 10. 15C-Chris Andrews[9]; 11. W20-Greg Wilson[12]; 12. 17GP-Tim Shaffer[11]

Real American Beer Heat 2 (10 Laps): 1. 17-Sheldon Haudenschild[1]; 2. 4-Zane DeVault[2]; 3. 17B-Bill Balog[5]; 4. 33W-Cap Henry[3]; 5. 23-Garet Williamson[7]; 6. 101-Kalib Henry[6]; 7. 88-Tanner Thorson[9]; 8. 21-James McFadden[4]; 9. 19P-Paige Polyak[10]; 10. 22-Brandon Spithaler[8]; 11. 8T-Tanner Tecco[11]

WIX Filter Heat 3 (10 Laps): 1. 2-David Gravel[1]; 2. 1S-Logan Schuchart[3]; 3. 18-Giovanni Scelzi[5]; 4. 18T-Tanner Holmes[4]; 5. 32-Bryce Lucius[2]; 6. O9-Craig Mintz[9]; 7. 35-Stuart Brubaker[10]; 8. 28M-Conner Morrell[8]; 9. 3J-Trey Jacobs[6]; 10. X-Mike Keegan[11]; 11. 19-TJ Michael[7]

The Greatest Store on Dirt Heat 4 (10 Laps): 1. 57-Kyle Larson[1]; 2. 41-Carson Macedo[2]; 3. 7N-Darin Naida[3]; 4. 15-Donny Schatz[9]; 5. 19H-Joel Myers Jr[4]; 6. 16-DJ Foos[6]; 7. 99-Skylar Gee[10]; 8. 5-Kody Brewer[11]; 9. 21K-Larry Kingseed Jr[5]; 10. 3Z-Brock Zearfoss[8]; 11. 25R-Jordan Ryan[7]

Honest Abe Roofing Qualifying Group A (2 Laps): 1. 83-Michael Kofoid, 00:12.253[11]; 2. 17-Sheldon Haudenschild, 00:12.345[10]; 3. 2C-Cole Macedo, 00:12.358[6]; 4. 4-Zane DeVault, 00:12.360[23]; 5. 29-Zeth Sabo, 00:12.432[22]; 6. 33W-Cap Henry, 00:12.460[17]; 7. 11N-Kasey Jedrzejek, 00:12.471[2]; 8. 21-James McFadden, 00:12.473[1]; 9. 55-Hunter Schuerenberg, 00:12.499[9]; 10. 17B-Bill Balog, 00:12.522[18]; 11. 21H-Brady Bacon, 00:12.546[20]; 12. 101-Kalib Henry, 00:12.549[21]; 13. 7S-Chris Windom, 00:12.571[12]; 14. 23-Garet Williamson, 00:12.587[14]; 15. 15K-Creed Kemenah, 00:12.616[4]; 16. 22-Brandon Spithaler, 00:12.617[7]; 17. 15C-Chris Andrews, 00:12.618[19]; 18. 88-Tanner Thorson, 00:12.625[5]; 19. 6-Zach Hampton, 00:12.741[15]; 20. 19P-Paige Polyak, 00:12.777[3]; 21. 17GP-Tim Shaffer, 00:12.797[16]; 22. 8T-Tanner Tecco, 00:12.923[8]; 23. W20-Greg Wilson, 00:12.930[13]

Honest Abe Roofing Qualifying Group B (2 Laps): 1. 2-David Gravel, 00:12.219[14]; 2. 57-Kyle Larson, 00:12.225[9]; 3. 32-Bryce Lucius, 00:12.389[8]; 4. 41-Carson Macedo, 00:12.400[10]; 5. 1S-Logan Schuchart, 00:12.410[17]; 6. 7N-Darin Naida, 00:12.544[5]; 7. 18T-Tanner Holmes, 00:12.547[7]; 8. 19H-Joel Myers Jr, 00:12.671[1]; 9. 18-Giovanni Scelzi, 00:12.693[18]; 10. 21K-Larry Kingseed Jr, 00:12.710[12]; 11. 3J-Trey Jacobs, 00:12.742[11]; 12. 16-DJ Foos, 00:12.758[13]; 13. 19-TJ Michael, 00:12.775[22]; 14. 25R-Jordan Ryan, 00:12.817[6]; 15. 28M-Conner Morrell, 00:12.830[2]; 16. 3Z-Brock Zearfoss, 00:12.885[4]; 17. O9-Craig Mintz, 00:12.902[21]; 18. 15-Donny Schatz, 00:12.969[16]; 19. 35-Stuart Brubaker, 00:13.022[3]; 20. 99-Skylar Gee, 00:13.075[20]; 21. X-Mike Keegan, 00:13.145[15]; 22. 5-Kody Brewer, 00:13.311[19]