91³Ô¹ÏÍø

Watch CBS News

Bright green fireball captured on video in Pacific Northwest sky as another meteor streaks across U.S.

Jason Jenkins was driving to work before dawn when a bright green streak beamed across the sky.

The captured the moment at 6:06 a.m. Monday while he was in southwestern Washington state about 20 miles north of Portland, Oregon. Initially he thought it might be a comet, but then figured it was too close to be one.

"It kind of reminded me of a lightning strike because it was so bright," he said. "The video doesn't do justice on how bright and close it seemed."

What Jenkins saw was a fireball, a particularly bright meteor that can be seen up to 80 miles above the Earth, according to the Oregon Museum of Science and Industry in Portland.

meteor-screenshot-2026-03-25-062155.png
A video captured a meteor as it sped across the Pacific Northwest sky. Jason Jenkins / AP

Fireballs have been spotted in the skies across the U.S. in recent days.

An apparent meteor lit up the skies over Northern California over the weekend, drawing hundreds of reports from viewers across the region, CBS Sacramento reported.

Last week a 7-ton meteor sped across the Ohio sky in a fireball that broke apart in a thunderous boom that startled residents who feared an explosion. NASA said eyewitnesses from 10 states, Washington, D.C., and the Canadian province of Ontario reported seeing the fireball.

"Some fragments, some tiny pieces of it, actually made it to the ground," Bill Cooke, the head of NASA's Meteoroid Environments Office, told CBS News.

On Saturday, a meteor traveling 35,000 miles per hour , according to NASA, and the meteorite was originally about . The disintegration caused booms heard by some in the area, the agency said, and a resident told local TV news outlet ABC13 that a piece of the meteor crashed through her roof.

Green fireballs like the one Jenkins saw are often due to the presence of magnesium, which emits a bright blue-green light when heated and vaporized in the Earth's atmosphere, the museum said. Nickel can also contribute to a green color.

Its altitude in the dark early morning sky made it widely visible, said Jim Todd, the museum's director of space science education.

"It was bright, it was green, it was spectacular," he said Monday. "One tiny little piece of rock put on such a show this morning."

With the video and other people reporting sightings, it may be possible to determine the direction the fireball was traveling and whether it landed on the Earth's surface. In most cases, it's rare that a fireball makes contact with the Earth, and when it does, it can be hard to locate, Todd said.

"Even if it does survive, it looks like a common everyday rock, and nearly almost impossible to find, unless it hit a house or a street or leaves debris behind," he said.

As the number of people with cameras on their dashboards and doorbells has grown, so have reports of such sightings, he added.

Jenkins said that while he got his dashcam in case of an accident, it was "cool to catch something like that."

"I won't go without a dashcam ever again," he said. "I need to go buy a lottery ticket now."

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