91³Ô¹ÏÍø

Watch CBS News

How to limit exposure to arsenic in rice after report finds high levels in brands across U.S.

Toxic heavy metals like arsenic are found in high levels in rice brands sold across the United States, according to a — but experts say there are ways to reduce your exposure. 

The report, from , an organization focused on babies' exposure to toxic chemicals, says testing found arsenic in 100% of 145 rice samples purchased from stores across the U.S. 

One in four rice samples also exceeded the federal limit of 100 parts per billion of inorganic arsenic set by the U.S. Food and Drug Administration for infant rice cereal in 2021, according to the report. Currently, no limits have been set for rice itself in the U.S. despite the Environmental Protection Agency labeling inorganic arsenic a .

While children are more susceptible to arsenic toxicity than adults, Sung Kyun Park, a professor of epidemiology at the University of Michigan School of Public Health who was not involved in the report, told CBS News expanding federal limits to rice, not just infant rice cereals, is an important future step.  

"Arsenic regulation for rice is very important, but FDA doesn't do that right now," he said. 

In the meantime, for those looking to reduce exposure, here are a few options: 

Use rice alternatives

Park said the most practical recommendation is diversifying your diet to include other grains. He said this is important for people, like himself, a Korean American, who "eat rice every day."

"Reducing reliance on rice as a staple daily diet is important," he said. "Whenever I cook rice, we add rice, quinoa and other whole grains."

HBBF's testing found alternatives including quinoa, barley and couscous contain substantially lower levels of total heavy metals than rice. The group tested 66 samples of rice alternatives.

Look at labels

While arsenic contamination in rice has been known for years, Park said one of the most interesting findings in the latest report was data on how levels differ across growing regions. For example, any rice grown in California was found to have lower arsenic levels that rice grown in the Southeast U.S.

"So whenever you buy rice at (a) grocery store, look at the backside," Park said, adding to look for the "growing region" listed on the product's label.

Cook rice like pasta

"Research shows that cooking rice in 6 to 10 cups of water per 1 cup of rice and draining the excess water before eating can remove a significant amount of arsenic," the HBBF report read.

But, Park admits, "cooking rice like pasta is not easy," which may deter people from this option.

But, if you're willing to put in the work, the FDA says the cooking method can , depending on the type of rice.

Choose based on type

In addition to location grown, the HBBF report also found some types of rice had higher levels of heavy metals than others. For example, levels are typically lower in . 

Other lower-end level options, according to the report, included jasmine rice from Thailand and basmati rice from India.

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=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(); } }); }); }); });