91³Ô¹ÏÍø

Watch CBS News

Minnesota wildfire interactive maps show scale of devastation; containment near 100%

Three massive wildfires are all nearly contained after raging for weeks in northeastern Minnesota.

Firefighters have made big progress since the fires broke out around May 12, and all evacuations were lifted on Memorial Day.  

Crews are also battling huge wildfires in Central and Western Canada, with the  reporting 217 active wildfires as of June 13, with 98 burning out of control.

As of June 13, the reports the Minnesota fires now cover about 30,000 acres:

  • : 16,145 acres, 94% contained
  • : 12,071 acres, 98% contained
  • : 1,259 acres, 95% contained
  • : 13 acres, 100% contained

The Minnesota Department of Natural Resources is leading the Jenkins Creek and Munger Shaw fight, while the National Incident Management Organization has command of the Camp House and Horse River fires.

Below are interactive maps, updated regularly by the National Interagency Fire Center. NOTE: Figures may vary from map to map.

The Jenkins Creek Fire

The Jenkins Creek Fire, first reported on May 13, is centered about 60 miles north of Duluth near Hoyt Lakes, just northwest of the Camp House Fire.

The U.S. Forest Service believes the fire was "human caused," though the investigation is still in progress.  

On June 13, the DNR reported the fire "continues to smolder in areas of thick spruce budworm affected vegetation, deep peat and sphagnum moss."

The Camp House Road Fire

The Camp House Road Fire was first reported on May 12, about 45 miles northeast of Duluth. The sheriff's office reports it has since destroyed more than 150 structures, including cabins and homes.

The forest service says the fire "initially started on private land and moved into national forest system lands."

"Priority is being given to locations where repair activities can help protect ecologically significant wild rice lakes," the forest service said.

The Munger Shaw Fire

First reported on May 12 near the town of Cotton, the Munger Shaw Fire quickly spread to hundreds of acres.

"While the fire is largely contained, smoldering hotspots within the fire's interior may continue to smolder and produce smoke until the fire area receives sufficient precipitation," the DNR says.

The Horse River Fire

Situated about 35 miles north of Brimson, the Horse River Fire was first reported in the Boundary Waters Canoe Area Wilderness on May 22, and was contained on June 8, according to the National Incident Management Organization.

The forest service says the fire's likely origin was a lightning strike. At its peak, the fire covered more than a dozen acres.

How you can help

Donations to support relief for Lake County community members can be made . 

Donations can also be mailed to Head of the Lakes United Way (please note it's for wildfire relief): 314 W. Superior St. #750, Duluth, MN 55802.

Donations to support relief for St. Louis County community members can be made .

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