American Red Cross declares emergency blood shortage as donations plunge 25% in June
As summer heats up, blood donations are going down. Last month, we collected over 26,000 fewer blood donations than needed to meet the needs of patients. Tiffany Taylor with the American Red Cross says it’s common to see blood donation declines this time of year as more people are traveling and fewer blood drives in places like schools. But she says the need for blood doesn’t take *** summer break when blood donations are low. This can lead to blood shortages which affect our ability to support cancer patients in their treatment. It affects our ability to respond to medical emergencies and chronic conditions. If blood isn’t readily available, it can also lead to postponement of elective surgeries. Taylor says low donations are especially concerning for the approximately 100,000 Americans who suffer from sickle cell disease. There is no widely available cure and they often rely on regular blood transfusions to manage their pain and prevent life threatening complications. While donors of all blood types are needed. The Red Cross is especially in need of type O which is always in high demand for health. Minute. I’m Mandy Gaither
Updated: 2:00 AM PDT Jul 13, 2026
Editorial Standards ⓘ
American Red Cross declares emergency blood shortage as donations plunge 25% in June
Updated: 2:00 AM PDT Jul 13, 2026
Editorial Standards ⓘ
The American Red Cross on Monday declared an emergency blood shortage as the blood supply fell nearly 25% in June. The Red Cross says blood donors are urgently needed to give blood to help ensure patients receive lifesaving medical care.In a press release Monday, the American Red Cross’ national headquarters said the shortage comes amid the “summer trauma season,” which it describes as being the period between Memorial Day and Labor Day “when the need for blood to treat traumatic injuries often increases.”“Summer always brings challenges for the blood supply, but patients are still in the hospital, needing blood for critical medical care,” said Dr. Courtney Lawrence, division chief medical officer for the Red Cross. Red Cross blood distributions to hospitals are nearly 3,500 units higher per week than expected, the organization said, adding that “a steep decline” in blood donations since May’s end has created a gap between supply and patient need. And that gap is growing, the Red Cross said. The organization said that “busy schedules, temporary illness and the seasonal loss of school blood drives during summer break are driving the decline in donations, which could put patient care at risk if not reversed.”The national headquarters said a recent Red Cross survey revealed a “significant gap” between public perception and the reality of the nation’s blood supply. The survey found that less than 1 in 5 respondents understood that blood cannot be stockpiled because it has a limited shelf life and must be continually replenished through volunteer donors. Additionally, roughly half of the participants believed it was very likely that they or someone close to them would need blood one day — even though someone in the U.S. receives a blood transfusion every two seconds. “Without blood available, emergency rooms and maternity wards are paralyzed, and patients with life-threatening conditions or injuries may not get the treatments they need. By donating blood, you help our doctors and nurses save lives. We urge all those who may be eligible to give now to end this shortage,” Lawrence said.The Red Cross says all blood types are needed. “This shortage is especially serious for types O positive and B negative blood, as well as AB plasma,” the Red Cross’ release states. “Without immediate action, patients who rely on transfusions — including trauma patients, mothers in childbirth, and those with sickle cell disease or cancer — face serious risk.”To encourage donations, the Red Cross is offering Fandango Movie Tickets (up to $15 ticket price and fees) via email to donors who give at participating locations between July 13 and July 31. Additional details can be found at RedCrossBlood.org/July. How to donate bloodThose who are able to are urged by the Red Cross to book an appointment to give blood or platelets by using the Blood Donor App, visiting RedCrossBlood.org or calling 1-800-RED CROSS (1-800-733-2767).Here’s what’s required to donate:A blood donor card or driver’s license or two other forms of identification are required at check-in.Individuals who are 17 years of age in most states (16 with parental consent where allowed by state law), weigh at least 110 pounds and are in generally good health may be eligible to donate blood.High school students and other donors 18 years of age and younger also have to meet certain height and weight requirements.
The American Red Cross on Monday declared an emergency blood shortage as the blood supply fell nearly 25% in June
The Red Cross says blood donors are urgently needed to give blood to help ensure patients receive lifesaving medical care
In a press release Monday, the American Red Cross’ national headquarters said the shortage comes amid the “summer trauma season,” which it describes as being the period between Memorial Day and Labor Day “when the need for blood to treat traumatic injuries often increases.”
“Summer always brings challenges for the blood supply, but patients are still in the hospital, needing blood for critical medical care,” said Dr. Courtney Lawrence, division chief medical officer for the Red Cross
Red Cross blood distributions to hospitals are nearly 3,500 units higher per week than expected, the organization said, adding that “a steep decline” in blood donations since May’s end has created a gap between supply and patient need
And that gap is growing, the Red Cross said
The organization said that “busy schedules, temporary illness and the seasonal loss of school blood drives during summer break are driving the decline in donations, which could put patient care at risk if not reversed.”
The national headquarters said a recent Red Cross survey revealed a “significant gap” between public perception and the reality of the nation’s blood supply
The survey found that less than 1 in 5 respondents understood that blood cannot be stockpiled because it has a limited shelf life and must be continually replenished through volunteer donors
Additionally, roughly half of the participants believed it was very likely that they or someone close to them would need blood one day — even though someone in the U.S. receives a blood transfusion every two seconds
“Without blood available, emergency rooms and maternity wards are paralyzed, and patients with life-threatening conditions or injuries may not get the treatments they need. By donating blood, you help our doctors and nurses save lives. We urge all those who may be eligible to give now to end this shortage,” Lawrence said
The Red Cross says all blood types are needed
“This shortage is especially serious for types O positive and B negative blood, as well as AB plasma,” the Red Cross’ release states. “Without immediate action, patients who rely on transfusions — including trauma patients, mothers in childbirth, and those with sickle cell disease or cancer — face serious risk.”
To encourage donations, the Red Cross is offering Fandango Movie Tickets (up to $15 ticket price and fees)July 13 and July 31. Additional details can be found at RedCrossBlood.org/July
How to donate blood
Those who are able to are urged by the Red Cross to book an appointment to give blood or platelets by using the Blood Donor App, visitingRedCrossBlood.org or calling 1-800-RED CROSS (1-800-733-2767)
Here’s what’s required to donate:
- A blood donor card or driver’s license or two other forms of identification are required at check-in.
- Individuals who are 17 years of age in most states (16 with parental consent where allowed by state law), weigh at least 110 pounds and are in generally good health may be eligible to donate blood.
- High school students and other donors 18 years of age and younger also have to meet certain height and weight requirements.
Weather Information
‘
+ ‘
‘;
var gptLayer = window.gptLayer;
if (gptLayer && typeof gptLayer.insertAds === ‘function’) {
var slotsBefore = gptLayer.adSlots ? gptLayer.adSlots.length : 0;
gptLayer.insertAds();
if ((gptLayer.adSlots ? gptLayer.adSlots.length : 0) > slotsBefore) {
if (typeof gptLayer.callAdSlots === ‘function’) {
gptLayer.callAdSlots(‘imm’);
}
}
}
}
}
function closeRadarOverlay(containerId) {
var overlay = document.getElementById(containerId + ‘-radar-overlay’);
if (!overlay) return;
overlay.classList.remove(‘is-open’);
overlay.setAttribute(‘aria-hidden’, ‘true’);
document.body.classList.remove(‘weather-radar-overlay-active’);
var adSlot = overlay.querySelector(‘.weather-radar-overlay__ad-slot’);
if (adSlot) {
adSlot.innerHTML = ”;
}
}
function trackRadarOverlayInteraction(containerId) {
var now = Date.now();
var key = ‘radar_overlay_last_interaction_’ + containerId;
if (!window[key] || now – window[key] > 10000) {
window[key] = now;
dispatchWeatherGA4Event(‘radar_overlayinteraction’, ‘interaction’, containerId);
}
}
function isMobileOrTabletViewport(breakpoint = 980) {
const w = window.innerWidth || document.documentElement.clientWidth || 0;
return w < breakpoint;
}
function removeUnusedWeatherModule() {
const desktopClass = ‘sidelist-weather’;
const mobileClass = ‘mobile-weather’;
if (isMobileOrTabletViewport()) {
console.log(‘[WEATHER-BOX] Mobile/tablet viewport detected, removing desktop weather module if it exists’);
const desktopModule = document.querySelector(‘.’ + desktopClass);
if (desktopModule) {
console.log(‘[WEATHER-BOX] Removing desktop weather module’);
desktopModule.remove();
}
} else {
console.log(‘[WEATHER-BOX] Desktop viewport detected, removing mobile weather module if it exists’);
const mobileModule = document.querySelector(‘.’ + mobileClass);
if (mobileModule) {
console.log(‘[WEATHER-BOX] Removing mobile weather module’);
mobileModule.remove();
}
}
}
document.addEventListener(‘DOMContentLoaded’, function() {
removeUnusedWeatherModule();
function generateForecastItem(data) {
var ariaLabel = data.timeLabel + ‘, ‘ + data.primaryTemp + ‘ degrees, ‘ +
data.secondaryInfo + ‘ percent chance of precipitation’;
return `
`;
}
function refreshWeatherIframe(containerId) {
var iframeId = ‘weather-iframe-‘ + containerId;
var iframe = document.getElementById(iframeId);
if (iframe && iframe.src) {
var originalSrc = iframe.src;
iframe.src = originalSrc + (originalSrc.indexOf(‘?’) > -1 ? ‘&’ : ‘?’) + ‘t=’ + Date.now();
}
}
function initializeWeatherBox(container) {
var containerId = container.getAttribute(‘data-container-id’);
var isWeatherBoxV2 = containerId === ‘home-weather-v2’;
function switchWeatherTab(tabName, clickedElement) {
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
tab.classList.remove(‘open’);
tab.setAttribute(‘aria-selected’, ‘false’);
});
clickedElement.classList.add(‘open’);
clickedElement.setAttribute(‘aria-selected’, ‘true’);
container.querySelectorAll(‘[data-content-id]’).forEach(function(content) {
content.style.display = ‘none’;
content.setAttribute(‘hidden’, ‘true’);
});
var targetContent = container.querySelector(‘[data-content-id=”‘ + tabName + ‘”]’);
if (targetContent) {
targetContent.style.display = ‘block’;
targetContent.removeAttribute(‘hidden’);
}
}
function loadWeatherData() {
// If weather data is already being loaded, wait for it
if (window.weatherDataPromise) {
window.weatherDataPromise.then(function(data) {
if (data && data.data) {
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
}
});
return;
}
var location = { zip: window.DEFAULT_ZIPCODE };
try {
var storedLocations = localStorage.getItem(‘hrst.zip.history’);
if (storedLocations) {
var locations = JSON.parse(storedLocations);
if (locations && locations.length > 0) {
location = locations[0];
}
}
} catch (e) {}
var apiUrl = (window.DEWY_HOSTNAME || ”) + ‘/api/v1/weather/full/’ + location.zip;
if (window.fetch) {
window.weatherDataPromise = fetch(apiUrl)
.then(function(response) { return response.json(); })
.then(function(data) {
if (data && data.data) {
var article = container.closest(‘.article–wrapper’);
var weatherContainer = container.closest(‘.weather-box-container’);
if (weatherContainer) {
weatherContainer.style.display = ‘flex’;
updateCurrentWeather(data.data);
updateForecastTabs(data.data);
updateWeatherAlertsBar(data.data);
}
return data;
}
})
.catch(function(error) {
console.error(‘Error loading weather:’, error);
// Reset to unknown background on error
updateWeatherBackground(‘unknown’);
});
}
}
function updateWeatherAlertsBar(weatherData) {
var weatherWatchHeader = container.querySelector(‘.weather-watch-header’);
if (!weatherWatchHeader) return;
var weatherWatchText = weatherWatchHeader.querySelector(‘.weather-watch-text’);
var weatherWatchLink = weatherWatchHeader.querySelector(‘.weather-watch-link’);
if (weatherData.alerts_count > 0) {
weatherWatchHeader.className = ‘weather-watch-header has-alerts’;
if (weatherWatchText) {
weatherWatchText.textContent = `Weather Alerts (${weatherData.alerts_count})`;
}
if (weatherWatchLink) {
if (!weatherWatchLink.getAttribute(‘data-initial-href’)) {
weatherWatchLink.setAttribute(‘data-initial-href’, weatherWatchLink.getAttribute(‘href’));
weatherWatchLink.setAttribute(‘data-initial-onclick’, weatherWatchLink.getAttribute(‘onclick’) || ”);
}
weatherWatchLink.setAttribute(‘href’, ‘/alerts’);
weatherWatchLink.setAttribute(‘onclick’, “return handleWeatherLinkClick(event, ‘click_alerts’, ‘click’, ‘mobile-weather’, ‘/alerts’);”);
}
} else {
weatherWatchHeader.className = ‘weather-watch-header’;
if (weatherWatchText) {
weatherWatchText.textContent = containerId === ‘home-weather-v2’ ? ‘Watch Latest Forecast’ : ‘Latest Forecast’;
}
if (weatherWatchLink) {
var initialHref = weatherWatchLink.getAttribute(‘data-initial-href’);
var initialOnclick = weatherWatchLink.getAttribute(‘data-initial-onclick’);
if (initialHref) {
weatherWatchLink.setAttribute(‘href’, initialHref);
}
if (initialOnclick) {
weatherWatchLink.setAttribute(‘onclick’, initialOnclick);
}
}
}
}
function updateCurrentWeather(weatherData) {
if (weatherData.current) {
var tempValue = weatherData.current.temp_f || ”;
var skyValue = weatherData.current.sky || ”;
var feelsLikeValue = weatherData.current.feels_like_f || weatherData.current.temp_f || ”;
var tempEl = container.querySelector(‘.weather-grid–current-temp-value’);
if (tempEl) {
tempEl.textContent = tempValue;
tempEl.setAttribute(‘aria-label’, tempValue + ‘ degrees Fahrenheit’);
}
var iconEl = container.querySelector(‘.weather-grid–current-icon’);
if (iconEl && weatherData.current.icon_name) {
iconEl.className = ‘weather-grid–current-icon weather-current-icon icon icon-weather-‘ + weatherData.current.icon_name;
}
var skyEl = container.querySelector(‘.weather-grid–sky’);
if (skyEl) {
skyEl.textContent = skyValue;
skyEl.setAttribute(‘aria-label’, ‘Current condition: ‘ + skyValue);
}
var feelsEl = container.querySelector(‘.weather-grid–feels’);
if (feelsEl) {
feelsEl.textContent = feelsLikeValue + ‘°F’;
feelsEl.setAttribute(‘aria-label’, feelsLikeValue + ‘ degrees Fahrenheit’);
}
var weatherContainer = container.querySelector(‘.weather-temp-container’);
if (weatherContainer) {
var summary = ‘Current temperature ‘ + tempValue + ‘ degrees Fahrenheit, ‘ +
skyValue + ‘, feels like ‘ + feelsLikeValue + ‘ degrees’;
weatherContainer.setAttribute(‘aria-label’, summary);
}
updateWeatherBackground(weatherData.current.icon_name);
}
}
function updateWeatherBackground(iconName) {
try {
var bgPath = weatherImages.backgrounds[iconName] || weatherImages.backgrounds.unknown;
container.style.backgroundImage = ‘url(‘ + bgPath + ‘)’;
} catch (e) {
console.log(‘Error updating weather background:’, e);
}
}
function updateForecastTabs(weatherData) {
var visibleItems = isWeatherBoxV2 ? 6 : 5;
if (weatherData.hourly) {
var hourlyContainer = container.querySelector(‘.weather-hourly-forecast’);
if (hourlyContainer) {
var html = ”;
var maxHours = Math.min(visibleItems, weatherData.hourly.length);
for (var i = 0; i < maxHours; i++) {
var hour = weatherData.hourly[i];
html += generateForecastItem({
timeLabel: hour.hour_display,
iconName: hour.icon_name,
primaryTemp: hour.temp_f,
secondaryInfo: hour.precip_chance + ‘%’
});
}
hourlyContainer.innerHTML = html;
}
}
if (weatherData.daily) {
var dailyContainer = container.querySelector(‘.weather-daily-forecast’);
if (dailyContainer) {
var html = ”;
var maxDays = Math.min(visibleItems, weatherData.daily.length);
for (var i = 0; i < maxDays; i++) {
var day = weatherData.daily[i];
var dayName = getShortDayName(day.day);
html += generateForecastItem({
timeLabel: dayName,
iconName: day.icon_name,
primaryTemp: day.high_f,
secondaryInfo: day.precip_chance + ‘%’
});
}
dailyContainer.innerHTML = html;
}
}
}
function getShortDayName(dayName) {
switch (dayName) {
case ‘Today’:
return ‘Today’;
case ‘Tomorrow’:
return ‘Tmrw’;
case ‘Sunday’:
return ‘Sun’;
case ‘Monday’:
return ‘Mon’;
case ‘Tuesday’:
return ‘Tue’;
case ‘Wednesday’:
return ‘Wed’;
case ‘Thursday’:
return ‘Thu’;
case ‘Friday’:
return ‘Fri’;
case ‘Saturday’:
return ‘Sat’;
default:
return dayName;
}
}
container.querySelectorAll(‘[data-tab-id]’).forEach(function(tab) {
var isActive = tab.classList.contains(‘open’);
tab.setAttribute(‘tabindex’, ‘0’); // Both tabs focusable for VoiceOver
tab.setAttribute(‘role’, ‘tab’);
tab.setAttribute(‘aria-selected’, isActive);
tab.addEventListener(‘keydown’, function(e) {
var tabs = Array.from(container.querySelectorAll(‘[data-tab-id]’));
var currentIndex = tabs.indexOf(this);
switch(e.key) {
case ‘ArrowLeft’:
e.preventDefault();
var prevIndex = currentIndex > 0 ? currentIndex – 1 : tabs.length – 1;
tabs[prevIndex].focus();
break;
case ‘ArrowRight’:
e.preventDefault();
var nextIndex = currentIndex < tabs.length – 1 ? currentIndex + 1 : 0;
tabs[nextIndex].focus();
break;
case ‘Enter’:
case ‘ ‘:
e.preventDefault();
var tabId = this.getAttribute(‘data-tab-id’);
switchWeatherTab(tabId, this);
if (tabId === ‘hourly’) {
dispatchWeatherGA4Event(‘click_hourly’, ‘click’, containerId);
} else if (tabId === ‘daily’) {
dispatchWeatherGA4Event(‘click_daily’, ‘click’, containerId);
}
break;
}
});
tab.onclick = function() {
var tabId = this.getAttribute(‘data-tab-id’);
switchWeatherTab(tabId, this);
if (tabId === ‘hourly’) {
dispatchWeatherGA4Event(‘click_hourly’, ‘click’, containerId);
} else if (tabId === ‘daily’) {
dispatchWeatherGA4Event(‘click_daily’, ‘click’, containerId);
}
return false;
};
});
loadWeatherData();
window.addEventListener(‘pageshow’, function(event) {
if (event.persisted) {
// Fix for weather radar iframe appearing gray after browser back/forward navigation
// When user navigates back, the page loads from browser cache but the iframe
// content doesn’t restore properly, showing a gray screen instead of the radar map
// This forces a fresh reload of the iframe by adding a timestamp parameter
setTimeout(function() {
refreshWeatherIframe(containerId);
}, 300);
}
});
}
document.querySelectorAll(‘.weather-sidebar’).forEach(function(weatherBox) {
initializeWeatherBox(weatherBox);
});
});
![]()

Make KCRA a preferred source on Google


