FishyHubFishyHub Blog
Why Are My Fish Not Eating? Stress, Water Quality, Diet, and Acclimation
Shi Qing Poh
Shi Qing Poh
Author
11 May 2026
7 min read

Why Are My Fish Not Eating? Stress, Water Quality, Diet, and Acclimation

A fish that refuses food is telling you something. Most cases of loss of appetite in aquarium fish have a clear cause and a straightforward fix — if you know what to look for. Here's a systematic approach to diagnosing and solving the problem.

Step 1: Is This Normal New-Fish Behaviour?

The most common reason fish refuse food is that they are newly introduced to a tank. Most fish take 3–10 days to begin feeding confidently in a new environment. During this time:

  • They are exploring their territory
  • They may be hiding or staying near the surface
  • They may tentatively approach food but spit it out

What to do: Be patient. Offer small amounts of food twice daily. Do not overfeed trying to coax them — uneaten food degrades water quality and increases stress.

Step 2: Test Water Quality

Poor water quality is the second most common cause of appetite loss. Even experienced fish keepers are sometimes surprised by sudden ammonia or nitrite spikes.

Test immediately:

  • Ammonia (target: 0 ppm)
  • Nitrite (target: 0 ppm)
  • Nitrate (target: < 20 ppm)
  • pH (target: appropriate for species)

Any detectable ammonia or nitrite will cause fish to stop eating. Perform a 25–30% water change immediately if detected and retest in 24 hours.

Step 3: Check for Disease

Many diseases cause appetite loss as an early or primary symptom:

Disease Other signs alongside appetite loss
Ich (white spot) White granular spots on fins and body
Internal parasites Hollow belly, stringy white feces
Bacterial infection Redness, ulcers, fin rot
Velvet Gold dust appearance, scratching on objects

If appetite loss is accompanied by any of the above, isolate the fish and treat appropriately.

Step 4: Assess Stress Sources

Stressed fish do not eat. Common stress causes:

  • Aggressive tankmates: Is the fish being chased or bullied?
  • Overcrowding: Too many fish for the tank volume
  • Bright light without cover: Shy species refuse to come out to eat in exposed conditions
  • Temperature extremes: Too high (above 30°C) or too low (below 22°C) for the species

Step 5: Evaluate the Food Itself

Wrong food type

Some fish are highly specific feeders:

  • Carnivorous species (bettas, dwarf puffers) may refuse plant-based pellets entirely
  • Bottom feeders (corydoras) cannot access floating food
  • Very small fish (chili rasboras) cannot eat standard-sized pellets

Monotonous diet

Fish fed the same food for months sometimes develop a preference refusal — especially bettas. Rotate food types every 1–2 weeks.

Old or degraded food

Dry food loses palatability and nutritional value after opening. Store in a sealed, cool, dark location and replace after 2–3 months of opening.

Step 6: Check Water Temperature

Fish metabolism is directly tied to temperature. Fish in cooler-than-optimal water become lethargic and lose appetite. Check:

  • Is the heater functioning?
  • Is the thermometer reading correctly?
  • Is there a temperature drop at night (common in less-insulated Singapore rooms with air conditioning)?

Quick Checklist

  • Newly introduced? Allow 5–10 days to settle
  • Test water: ammonia, nitrite, nitrate, pH
  • Check for visible disease signs
  • Look for aggression from tankmates
  • Check food type matches species' dietary needs
  • Check food freshness and storage
  • Verify water temperature is in species' optimal range

Browse our fish food range and water test kits to support fish health and appetite.

Comments

Sign in to join the conversation