91³Ô¹ÏÍø

Watch CBS News

Missy Bevers' 2016 Midlothian murder remains unsolved 10 years later

As we approach 10 years since the murder of Missy Bevers, her case remains unsolved. 

Police say the investigation is active, and there's a push to keep her name in the public eye.

"Our goal is to just keep her case alive," Renae Rodden said.

Rodden first met Bevers in 2013. They were coworkers at a denim company and quickly became close.

"Missy was very kind, loving, you could tell she really cared," she said.

She was a wife and mother of three who had a passion for fitness.

Podcast hosts revisit the case

As the 10‑year date since her murder approaches, Rodden and Crystal Lawson are hosting a special episode of their podcast, True Crime Broads, to go over the case.

"We just really wanted to let people get to know her," Lawson said. "She was not just a statistic."

Missy's case is one many North Texans still remember.

Surveillance video still haunts investigators

April 18, 2016, surveillance video shows a person in tactical gear walking through Creekside Church in Midlothian.

Missy was there preparing to lead an early morning workout when she was murdered.

"The person is walking around in the church, and it is very creepy," Rodden said. "You can't tell if it's a man or a woman, so people are very interested in trying to figure out who it is."

Police say case remains active

Police say this is still an active case.

In the last year, they've received more than 100 leads from all over the world. They're using new forensic technology to investigate and say no one has been ruled out as a suspect.

"That's good news because most things after this many years would be ice cold," Lawson said.

Loved ones hope someone speaks up

"Somebody out there knows something," Rodden said.

"I'm hoping that since it's been 10 years, there are relationships that may have changed," Susan McConnell said. "Situations have changed, and people will be encouraged to come forward."

"We need justice for her; not only does the family need it, the community needs it," Rodden said.

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