// Adds dimensions UUID, Author and Topic into GA4
Sunday, August 16, 2026
27.2 C
Singapore

Otters feast on pet koi fish

Singaporeans have a soft spot for otters. The cute wildlife creatures often catch the attention of many city-goers when they swim around the waterworks in the central business district.

However, a recent incident put these otters in a different light, leading many to feel conflicted about the popular animals.

Dr Jean Ho of the Bird Ecology Study Group posted about an unfortunate incident in which a group of otters “decimated” the pet koi fish in the pond.

A brutal photo showed the aftermath of the attack where six otters beheaded the koi fish and left the bodies on the ground. The otters only seemed to have eaten the fish heads.

Dr Ho wrote, “It was heart wrenching to see our koi, which were raised by my helper for the last 15 years, beheaded and savaged by these supposedly cute creatures.”

Domesticated koi fish are reported to have an expected lifespan of more than 20 years.

While the Smooth Otter (Lutrogale perspicillata) is listed as a critically endangered species in Singapore, Dr Ho wondered whether the otter population in the city is “getting out of control.”

“These otters are now preying on private fishponds and dining on expensive koi, far easier prey than having to look for a few skinny fish in the rivers, canals or the sea.”

The National Parks reminds the public to avoid feeding otters that hunt for their own food in the environment. Waterways should also be kept clean and filled with fish and aquatic life for otters to feed in./TISG

Family of otters run around Shenton Way

- Advertisement -

Hot this week

‘I’m really tired of having to listen to her arguments’: SG employer considers replacing maid

The employer said her helper’s attitude was “super” when she first arrived, but changed after several months.

Too many choices, too many deal-breakers? Singaporeans say dating apps are making love harder

Some Singaporeans think dating apps have given people too many choices, making it easier to reject, ghost and move on to the next match.

Popular Categories

document.addEventListener("DOMContentLoaded", () => { const trigger = document.getElementById("ads-trigger"); if ('IntersectionObserver' in window && trigger) { const observer = new IntersectionObserver((entries, observer) => { entries.forEach(entry => { if (entry.isIntersecting) { lazyLoader(); // You should define lazyLoader() elsewhere or inline here observer.unobserve(entry.target); // Run once } }); }, { rootMargin: '800px', threshold: 0.1 }); observer.observe(trigger); } else { // Fallback setTimeout(lazyLoader, 3000); } });
// //
Enable Notifications OK No thanks