Aquariums at Home may earn an affiliate commission when you buy through links on this site. See footer.

Why Do Fish Rub Themselves Against Rocks?

Fish can be peculiar creatures. One minute they’re darting around the tank in all directions and the next, they’re lying almost motionless on the bottom! Perhaps you’ve recently observed your fish rubbing themselves against rocks or gravel in their aquarium and are now wondering why they’re doing this? Well, I have the answer for you below:

Rubbing against rocks is a natural behaviour for most fish. It’s often done to curb an itch which can be caused by a parasite. Illness and stress are other possibilities, often resulting from high ammonia levels in the water. Boredom or lack of mental stimulation could also be a factor. If the behaviour is rare, then there is likely no need for concern. If frequent, however, it could be the sign of a sick fish.

Now that you know some of the common reasons why fish rub themselves against rocks, let’s take a closer look at this in more detail. In this article, I’ll explain why fish rub against rocks or gravel at the bottom of the tank; how to tell if fish are sick, stressed, or just bored; what ammonia poisoning in fish looks like; and how to get rid of ammonia in an aquarium.

If I’ve piqued you interest and you now want to learn more about fish behaviour and why they rub themselves against rocks, then please continue reading…

Why Are My Fish Rubbing Against Things?

While rubbing against rock is often a behaviour associated with toxic water conditions, it could also be the sign of a sick or dying fish! There are 5 main reasons why fish rub against things in an aquarium. These include the following:

It’s Part of Their Natural Behaviour

It’s completely natural or instinctive for fish to sometimes rub themselves against rocks or other things in an aquarium, especially when it’s time to mate. If you notice it only occasionally and the fish seem to in good health otherwise, then there’s really no cause for alarm. However, if it’s happening regularly, you may want to check the water parameters as this could be a sign of ammonia build-up in the tank.

They’re Itchy

Fish will rub against things such as rocks or gravel in an aquarium if they’re itchy. This could be caused by a parasite or perhaps too much metal (like copper, for example) in the water. To solve the problems, try increasing the temperature of the water and raising the salinity a bit. This should take care of the ICH (which is a common fish parasite) without having to administer medication.

They’re Sick

Sometimes fish will rub on rocks or other things in an aquarium when they’re sick – or possibly dying. This can be the result of toxic water conditions caused by high ammonia levels. To prevent this from happening to your fish, be sure to test the water monthly to ensure the pH level is accurate. As well, do partial water changes (removing 10-15%) weekly.

They’re Stressed

When fish are being bullied, they may try to escape by hiding among plants, rubbing against rocks, or laying on the substrate in an aquarium. Sometimes, a lack of companionship can cause stress to fish which can also trigger this type of behaviour.

To avoid this, your best option is to observe your fish closely for the next week or two. If they’re being harassed, you may need to move them (or the aggressor) to another tank. If they’re a type of fish that likes to be in pairs of groups, you may need to add others of their kind to the aquarium.

They’re Bored

Fish, like humans, can get bored from time to time, especially if they’re caught in the wild and then placed in captivity. A common behaviour related to fish boredom is rubbing against rocks or other things in an aquarium. To remedy this, try to keep your fish entertained by adding mirrors, live plants, caverns, floating objects and other decorations to stimulate their brains.

What Does Ammonia Poisoning in Fish Look Like?

Ammonia poisoning in fish can happen suddenly or over time. If you notice your fish frequently rubbing against rocks, laying motionless at the bottom, gasping for air near the surface, swimming lethargically, hiding, or barely eating, then chances are they’re suffering from ammonia poisoning. Your best bet is to do a 50% water change immediately and then monitor your fish behavior closely for the next few days.

Do Fish Get Bored?

Fish are not unlike humans in that they too can get bored occasionally. Lack of mental stimulation or companionship are often the culprits. If you see your fish rubbing against rocks or other things in the aquarium, that could be a sign of boredom. Try adding some floating objects or a mirror for mental stimulation. Or if the fish is alone, you could consider introducing others of their species to the tank.

How Can You Tell if a Fish is Sick or Stressed?

Anxiety or illness in fish is often exhibited through their behaviour. Rubbing against rocks, hiding out for extended periods of time, darting around the tank, frantically swimming about, rapid gill movements or laboured breathing, and loss of appetite are all indicators that your fish are either sick or stressed. You may need to administer medication, provided you know exactly what fish disease you’re dealing with.

How Do I Get Rid of Ammonia in My Fish Tank?

Since one of the most common causes of fish rubbing against rocks (or exhibiting other signs of stress or sickness) is toxic water conditions, it’s important to maintain your tank by keeping it as clean as possible. To reduce ammonia levels in an aquarium, you must do the following:

  • Perform a thorough water change by removing 50% of the existing water and adding fresh or treated water. This will help dilute the ammonia that has built-up in the tank over time.
  • Do partial water changes each week and don’t forget to remove any excess algae build-up by wiping down the aquarium walls.
  • Invest in a good filtration system for your tank and make sure to replace the filter media at least once a month.
  • Treat the water with Tetra AquaSafe Plus Water Conditioner each month to not only eliminate chlorine and neutralize ammonia, but to remove metals (such as lead and copper) as well.
  • Scrap the bottom of the tank regularly to remove any rotting food or waste material that has collected on the substrate.

If you do all of the above and you still notice your fish frequently rubbing against rocks in the aquarium, then the likely culprit could be something as minor as boredom or something more serious like disease. It’s best to observe your fish closely for the next few weeks to see if the rubbing behaviour decreases. If not, then you may have to face the enviable fact that your fish is sick and/or dying.


To conclude, there are 5 main reasons why fish will rub on rocks in an aquarium. These include instinct, itchiness, boredom, stress, and sickness. In most cases, the cause is a toxic environment caused by high ammonia levels in the water. This can be remedied by properly maintaining your tank. Doing consistent (partial) water changes, adding a filtration system, and using a water conditioner is recommended.

I hope you’ve found this article to be both interesting and informative. Thanks for reading and good luck with your aquarium hobby!

Related Posts

Why Does My Fish Tank Water Keep Going Green?

What to do when a fish dies in your tank?

How to Stop Cichlids from Digging?