Another reason prices fell was sharp drops in travel-related costs, including airfares, which decreased 5.3% just from February to March. Hotel room prices dropped 3.5%.
Economists said those declines in part reflected much slower international demand as the number of tourists visiting the United States has fallen sharply amid Trump's aggressive trade policy.
Visits to the United States from overseas fell nearly 12% last month, according to government data.
What experts say
Easing inflation combined with President Trump's announcement yesterday of a 90-day pause in his reciprocal tariffs should help alleviate some concerns for the Federal Reserve when it meets on May 7 to make its next interest rate decision, said Julien Lafargue, chief market strategist at Barclays Private Bank.
But because other tariffs orchestrated by Mr. Trump have recently gone into effect — such as auto tariffs – inflation nevertheless could pick up later this year, experts say.
Yet March's data is "backward looking" and doesn't reflect the trade policy changes orchestrated by the Trump administration, noted Kay Haigh, global co-head of fixed income and liquidity solutions in Goldman Sachs Asset Management.
Mr. Trump's tariffs are still expected to lift inflation later in the year as the impact of the import duties trickle through the economy. Because tariffs are paid by U.S. importers like Walmart when they accept shipments of foreign goods, they typically pass off all or some of the tariff cost onto consumers through higher prices.
The president's 90-day pause excludes China, a major exporter to the U.S., which will continue to face tariffs of 125% on its goods. And Mr. Trump's 10% universal duty will also likely to push up prices in the coming months, economists say. The higher import taxes will likely weigh on the economy's growth as well.
What the CPI shows about egg prices
Although consumer prices cooled in March, the CPI data showed egg prices continued to inch higher last month. According to the CPI figures, egg prices increased in March to reach a new record-high of $6.23 despite a drop in wholesale prices and no egg farms having bird flu outbreaks.
Bird flu outbreaks were cited as the major cause of price spikes in January and February after more than 30 million egg-laying chickens were killed to prevent the spread of the disease.
Since the current bird flu outbreak began, more than 168 million birds have been slaughtered, most of them egg-laying chickens. Any time a bird gets sick, the entire flock is killed to help keep bird flu from spreading. That can have an effect on the egg supply because massive egg farms may have millions of birds.
What the CPI means for your money
Despite today's cooler-than-expected CPI numbers, inflationary risks are still a threat to the U.S. economy, especially as some of Mr. Trump's tariffs are still in place while others are merely delayed, experts say.
"Going forward, the Fed is likely to face a difficult trade-off as tariff-driven price increases start to feed through to the inflation data and activity remains soft," Haigh said. "We expect the Fed's initial reaction to be cautious, but the risks remain that a sharper than expected slowdown in the economy could result in a resumption of the Fed's easing cycle."
Three of four economists polled by FactSet expect the Fed will hold rates steady at its next meeting on May 7. The current federal funds — the interest rate banks charge each other for short-term loans — now stands in a range 4.5% to 4.75%.
That means consumers and businesses are unlikely to see any relief on loan rates in the near term, although economists are penciling in cuts later in the year, with the majority forecasting a reduction at the Fed's June 18 meeting.
const link = doc.createElement('link');
link.rel = 'stylesheet';
link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=fd53910ecf4604072044ab7c46d9b028';
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();
}
});
});
});
});