Hepper is reader-supported. When you buy via links on our site, we may earn an affiliate commission at no cost to you. Learn more.

Why Do Goldfish Eat Rocks & Gravel? Vet-Reviewed Causes & Solutions

Gregory Iacono

By Gregory Iacono

Gold fish swim near botom near gravel_dba87_shutterstock

Vet approved

Dr. Luqman Javed Photo

Reviewed & Fact-Checked By

Dr. Luqman Javed

DVM (Veterinarian)

The information is current and up-to-date in accordance with the latest veterinarian research.

Learn more »

Goldfish are amazing creatures and one of the most popular aquarium fish in the world. Most goldfish live incredibly long lives when well-kept, sometimes up to 40 years, and have memories that go back around 3 months!

One thing about goldfish you might have noticed is that they will occasionally eat rocks and gravel. Why do they do this? There are several reasons, but the most common is that goldfish are opportunistic foragers. That means when they see an opportunity to forage for food to eat, they take it, even if that something happens to be algae growing on a rock or piece of gravel.

To learn more about this interesting and occasionally health-impacting behavior, read on. We have valuable facts, tips, and advice below to help you keep your Goldie healthy and happy!

goldfish divider

Do Goldfish Genuinely Eat Rocks and Gravel?

When a goldfish puts a rock or gravel in its mouth, it isn’t going to eat the rocks and gravel; it simply wants to get to the algae or whatever else there is growing on them. In other words, goldfish don’t truly eat rocks and gravel (most of the time) but suck the algae off and then spit them back out.

Goldfish rarely swallow gravel or pieces of rock. Nonetheless, sharp gravel or rocks aren’t recommended as substrate for a goldfish tank. Swallowing sharp gravel isn’t good for goldfish, and fancy variants can sometimes snag their fins or get injured when they rub against the gravel. Rocks, though not as sharp as gravel, aren’t recommended because of how messy goldfish are in general. There’s a high likelihood of food and fish poop falling in between the rock and not being picked up by the filter, necessitating more frequent water changes.

That being said, some research suggests that goldfish may benefit from foraging, and a bare tank might not provide this opportunity. However, this doesn’t mean that there absolutely needs to be substrate in the tank. Pieces of large driftwood with some hardy plants attached to them or other soft-edged ornaments can provide goldfish with ample enrichment. These items can also be easily moved around your tank periodically to keep things exciting for your pet fish.

Goldfish in aquarium with plants and stones eating rocks
Image Credit: M-Production, Shutterstock

Can You Stop a Goldfish from Eating Rocks and Gravel?

There’s no good way to prevent a goldfish from accidentally eating rocks or gravel while searching for food. It’s bound to happen occasionally because goldfish put rocks and gravel in their mouth to suck off the algae and other food they find. They are instinctively designed for filtering food, meaning that they can pick up stones, filter the algae or other food they want off of it, and then spit the stone back out.

However, if you’re genuinely concerned about your goldfish eating rocks and gravel, you can remove them from your tank and add sand as a substrate instead, if you wish. However, sand is not without its risks, as it’s often very dense, and a thick layer of sand can lead to the proliferation of anaerobic bacteria in your aquarium, which can prove detrimental to your fish’s health. Overconsumption of sand can also sometimes lead to blockages along your fish’s digestive tract. In addition, it is quite dusty and takes a long time to clean and filter before initial placement in an aquarium. It is also not the easiest to vacuum with a gravel cleaner.

There are several other methods you can use to stop your goldfish from eating rocks and gravel, including:
  • Choose a gravel or rock size that’s too large for your goldfish to fit in its mouth
  • Don’t use any substrate at all in your aquarium
Goldfish at the bottom of aquarium looking at sand
Image Credit: Klemen Lorber, Shutterstock

goldfish divider

What Should You Do if a Rock Gets Stuck in Your Goldfish’s Mouth?

While it’s not a good thing for a goldfish to swallow rocks or gravel, the good news is that they usually don’t. Remember, goldfish swim around all day and test just about everything for food, including rocks, gravel, sand, plants, decorations, and other fish. They sometimes eat smaller fish accidentally because of this habit. If a rock or a piece of gravel gets stuck in your goldfish’s mouth when they’re checking it for food, follow the steps below to remove it carefully.

  • Don’t panic, because your goldfish isn’t at risk for choking; they breathe through their gills. The best course of action is to just observe your goldfish for about 24 hours. In most cases, they can eventually spit the rock back out. Remember that they might be just taking their time filtering food items off the rock and not necessarily struggling to handle it.
  • If 24 hours have passed and your goldfish still appears to have the rock stuck in their mouth, then you can help by using gravity. Begin by thoroughly washing your hands and drying them.
  • Gently capture your goldfish in a net and bring them to the edge of the tank.
  • If your goldfish is cooperative, gently hold them upside down (face down, tail up) for a few minutes. If your fish struggles, let them go; you’ll do more harm by holding them than a rock would. If your fish is calm, gravity may help them expel the rock.
  • If the rock doesn’t dislodge from holding your fish vertically, call an aquatic veterinarian. Your fish would have to be sedated or anesthetized before the rock can be removed by your vet.

As troublesome as a rock in a goldfish’s mouth sounds, it’s important to remain calm and not panic; the issue usually isn’t life-threatening. Fish primarily breathe through their gills, and a day or two without food is no issue for most healthy goldfish. Attempting to remove the rock manually is not recommended, as you may injure your fish and damage the internal structures of their mouth by doing so. If a rock is truly lodged in their mouth, it’s best to call a veterinarian.

goldfish skims over some blue rocks at the bottom of an aquarium
Image Credit: Sara Robinson, Shutterstock

Why Are Goldfish Always Searching for Food?

One of the most fascinating facts about goldfish is that they don’t have a stomach to store food before it goes into their intestines to be digested. That means that whatever your Goldie swallows goes directly into its intestines, where essential nutrients in the food it’s eaten will be absorbed. What’s left, as with most animals, will be expelled.

The process, from swallowing food to pooping it out, generally takes less than about two hours. For that reason, goldfish are always looking for food because it leaves their body so quickly. Once it’s gone, the hunt for more food continues, including searching in the rocks and gravel substrate in their tank.

Do Goldfish Sometimes Eat Sand?

If you have sand as a substrate in your aquarium, you may notice that your goldfish occasionally eats some of it.

There are two reasons your goldfish might do this, including:
  • Your Goldie ate some sand by accident – While searching for food, your goldfish might ingest a few grains of sand and swallow them accidentally.
  • Your Goldie couldn’t filter food out of sand, so they opt to swallow the sand with the food.

The use of sand for goldfish substrate remains controversial. While it does result in more foraging, it isn’t the safest option. It’s also not what wild goldfish are used to (they forage in silt, not sand).

goldfish divider

Final Thoughts

As we’ve seen, goldfish don’t eat rocks and gravel but instead place them in their mouths while searching for food. Gravel and rocks will often have algae and other bits of food stuck to them, which is what your goldfish is looking for. That’s because goldfish are opportunistic feeders with no stomachs and are always looking for food.

You can do several things to prevent your goldfish from eating rocks and gravel, including putting large rocks and gravel into your tank. Alternatively, you could opt for a no-substrate tank that will still accommodate your goldfish’s foraging needs with safe decor, driftwood, and hardy plants. We hope the information provided today helps you keep all your gorgeous goldfish happy and healthy!

Featured Image Credit: dba87, Shutterstock

Related Articles

Further Reading

Vet Articles

Latest Vet Answers

The latest veterinarians' answers to questions from our database