91³Ô¹ÏÍø

Watch CBS News

Tarik Skubal strikes out 10 as Tigers beat Red Sox, 4-1

Tarik Skubal struck out a season-high 10 over six innings of one-run ball, Kerry Carpenter hit a solo homer and the Detroit Tigers beat the Boston Red Sox 4-1 on Saturday, ending their nine-game road losing streak.

It was the Tigers' longest winless road stretch since a 10-gamer in 2010. Rookie Kevin McGonigle had an RBI single and two hits.

The 29-year-old Skubal (3-2) held the Red Sox to four hits and had the 18th double-digit strikeout game of his career, with 10 coming last season.

Detroit Tigers v Boston Red Sox
Tarik Skubal pitches against the Boston Red Sox at Fenway Park on April 18, 2026. Jaiden Tripi / Getty Images

Tyler Holton worked two scoreless innings and Kenley Jansen got the final three outs for his fifth save, the 481st of his career.

Boston starter Brayan Bello (1-2) was roughed up for four runs in four innings. The Red Sox have lost all 12 games this season when their starter doesn't go at least six innings and won all eight when they do.

With the Tigers leading 1-0, Carpenter sparked a three-run fourth by hitting Bello's changeup into Detroit's bullpen. Jake Rogers added a sacrifice fly and McGonigle had his run-scoring single.

In a victory over Miami in his previous start on Sunday, Skubal had a no-hit bid broken up with two outs in the sixth inning.

The AL's back-to-back Cy Young Award winner took a no-hitter into the fifth Saturday before Wilyer Abreu had a leadoff single up-the-middle. The Red Sox loaded the bases with no outs but managed only a run on Connor Wong's double-play grounder.

Coming off a 1-0 walk-off win in the series opener Friday, Boston's bats were quiet again after collecting just four hits the previous night.

Up next

Tigers LHP Framber Valdez (1-1, 3.75 ERA) was slated to face Red Sox ace Garrett Crochet (2-2, 7.58), coming off the worst start in club history.

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=296763317a51cab90faa73f1bb146d5c'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });