Knowledge Centre · Fish health and behaviour
Why is my fish breathing heavily?
Fast or laboured gill movement — visible anywhere in the tank, not just at the surface — usually means a fish isn't getting enough oxygen through its gills, whether that's because the water itself doesn't hold enough dissolved oxygen or because ammonia, nitrite, high temperature or a gill irritant is affecting the gills directly. This is a related but distinct sign from a fish gasping at the surface, which specifically describes repeated trips to gulp air at the water's edge. This guide explains what to look for and test first — it isn't a diagnosis for your specific fish.
At a glance
What it usually means
Reduced oxygen uptake, from either low dissolved oxygen or gills affected by ammonia, nitrite, temperature or irritation.
Test first
Ammonia, nitrite and temperature, the same day you notice it.
What this page won't do
Tell you which specific cause applies to your fish, or replace watching for gasping at the surface as a more advanced sign.
Understanding heavy breathing
A fish's gill covers open and close continuously as it breathes, and the rate is usually easy to gauge with a little patient observation from a short distance, without tapping the glass or otherwise disturbing the fish. A faster or more visibly laboured rate than usual, seen while the fish is resting rather than swimming actively, is the sign worth paying attention to.
It's worth being clear about how this differs from gasping. Heavy breathing can happen anywhere in the water column — a fish can breathe rapidly while resting near the bottom or mid-water. Gasping specifically describes a fish repeatedly surfacing to gulp air directly at the water's edge, which veterinary sources describe as "piping" and generally treat as a further sign that a fish's oxygen needs aren't being met[1]. Both usually reflect the same underlying issue, but a fish that has progressed to gasping at the surface is typically showing a more pronounced struggle. See our gasping at the surface guide if that's what you're seeing.
Likely causes
Water-quality related:
- Low dissolved oxygen. Warmer water holds less oxygen, weak surface agitation reduces gas exchange, and overstocking or overfeeding increases the demand a tank has to cope with.
- Elevated ammonia or nitrite. Both damage gill tissue directly, reducing oxygen uptake even when dissolved oxygen itself is adequate. See our ammonia and nitrite guides.
- High temperature. Beyond lowering dissolved oxygen, elevated temperature increases a fish's metabolic demand for oxygen at the same time supply is reduced.
- CO2 injection overdose, in a planted tank running supplemental CO2. Excess dissolved CO2 is toxic in its own right, separate from low oxygen. See our CO2 guide for safe monitoring if this applies to your setup.
Other possible causes:
- Gill irritation or parasites. Parasites affecting the gills are a documented cause of laboured breathing, sometimes alongside flashing or lethargy[2]. See our flashing guide if that's also present, or our velvet disease guide if you're also seeing a fine gold or rust dusting on the body or fins.
- Stress, chasing or transport. A brief increase in breathing rate after a startle, vigorous swimming, or recent transport is a normal physiological response, not a cause for concern on its own if it settles quickly.
- Advanced disease. In some cases, laboured breathing is a late sign of a broader illness rather than a primary respiratory problem.
Immediate actions
Test and increase oxygen now
-
Test ammonia and nitrite
These are quick to test and among the most common causes of laboured breathing.
-
Increase surface agitation
An air stone, a filter outflow angled to break the surface, or an extra powerhead all help oxygen exchange, whatever turns out to be behind the laboured breathing.
-
Check temperature
Confirm it hasn't spiked, and that it's appropriate for the species affected.
Reduce ongoing pressure
-
Pause or reduce feeding
Uneaten food breaks down and consumes oxygen as it does, adding further pressure on top of whatever's already affecting the fish.
-
Do a partial water change if ammonia or nitrite is detected
Match temperature and use a suitable conditioner rather than reaching for tap water directly. Our water-change guide covers the full process safely.
What to check next
If immediate actions don't resolve things quickly, work through this checklist:
- Is the filter and any air pump actually running normally, with no blockage or reduced flow?
- Has the fish been recently chased, transported, or startled, and is the rate settling back down over time?
- Do the gills look visibly inflamed, or is there any sign of parasites such as flashing or scratching?
- Is breathing rate elevated across most of the tank, or is it just one fish? Several fish affected points more toward a tank-wide oxygen or water-quality problem; one fish points more toward an individual cause.
When it may be more serious
Common mistakes
- Adding medication for a suspected gill parasite before testing ammonia, nitrite and temperature.
- Disturbing the fish repeatedly to check its breathing rate, which itself raises the rate temporarily and muddies what you're observing.
- Overlooking a slow, gradual temperature rise because no single day's change seemed significant.
- Waiting to see if heavy breathing progresses to full surface gasping before testing water.
- Continuing to feed at the same level after noticing heavy breathing, adding further oxygen demand.
Prevention
- Maintain good surface agitation and circulation, especially in warmer or heavily stocked tanks.
- Get into a habit of testing ammonia and nitrite on a schedule, rather than only reaching for a kit once breathing already looks laboured.
- Stock and feed in line with your tank's actual capacity, not just its physical size.
- Quarantine any new arrivals before adding them to an established tank, so a gill parasite they're carrying doesn't spread to fish that are already breathing normally.
- Learn each fish's normal resting breathing rate so a genuine change is easier to notice early.
Frequently asked questions
What's the difference between heavy breathing and gasping at the surface?
Heavy breathing is faster or more laboured gill movement that can be seen anywhere in the tank. Gasping specifically describes a fish repeatedly going to the surface to gulp air at the water's edge. They often share the same underlying causes, but a fish gasping at the surface is generally showing a more advanced struggle for oxygen than one breathing quickly elsewhere in the tank.
How can I count my fish's breathing rate without stressing it?
Watch from a short distance, without tapping the glass or adding food to get its attention, and count gill movements over 15 seconds during a moment when the fish is resting rather than swimming actively. Compare it with other fish of the same species in the tank, and with how that fish normally looks, rather than against a fixed number.
Can heavy breathing be normal after activity or feeding?
Yes, brief increases in gill movement after vigorous swimming, feeding, or a startle response are normal, similar to a mammal breathing faster after exercise. It's sustained heavy breathing at rest, or breathing that doesn't settle back down, that's worth investigating.
Should I medicate for gill parasites if my fish is breathing heavily?
Not before testing your water. Ammonia, nitrite, high temperature and low dissolved oxygen are all more common explanations and are quick to test for. Medicating before ruling these out risks treating the wrong problem while the water-quality issue continues.
Does heavy breathing in several fish mean something different to one fish?
Yes. Several fish breathing heavily at the same time points strongly toward a tank-wide cause such as low oxygen, high ammonia or nitrite, or a temperature spike. One fish alone breathing heavily while others look normal points more toward an individual cause, such as localised gill irritation or an early individual illness.
How AquaPulse Water Check can help
Fast gill movement has a shortlist of common causes, and ammonia and nitrite sit near the top of it — but a number only tells you something if you know whether it's unusual for this tank specifically. Test now, log it in AquaPulse, and you're not just getting today's answer; you're building the baseline that makes tomorrow's reading, or the next fish that starts breathing hard, faster to make sense of.
Water Check works from the readings you enter — it can't listen to gill movement or measure dissolved oxygen directly, and isn't a substitute for testing your water with a reliable kit, or for professional or veterinary advice when livestock are seriously or persistently unwell. Get AquaPulse on the App Store or Google Play to try it, or see the Water Check feature page for more detail.
Sources and editorial information
- Published
- 19 July 2026
- Last reviewed
- 19 July 2026
- Written and maintained by
- AquaPulse (Valeon Labs Ltd)
This guide is written and maintained by the AquaPulse team at Valeon Labs Ltd. It draws on published veterinary references rather than a single author's personal experience, and we paraphrase and link to those sources rather than reproducing their wording. We'll update this page if the sources it's based on change, or if we find something we've got wrong.
Good to know: This guide provides general informational guidance only. It is not a veterinary service and does not replace specialist or aquatic health advice for serious livestock health issues.
- [1] Merck Veterinary Manual — "Environmental Diseases of Aquatic Animals in Aquatic Systems" Used for dissolved-oxygen thresholds and "piping" (surface gasping) as a related, more advanced clinical sign.
- [2] Merck Veterinary Manual — "Parasitic Diseases of Fish" Used for gill-parasite signs including laboured breathing and flashing.