If you're using tap water and having trouble with pH, you might be dealing with a carbonates problem.
Carbonates in aquaponics frequently cause problems with fluctuating pH or difficulty to exit a high pH range.
What are carbonates?
A carbonate molecule is comprised of a carbon atom with three oxygen atoms attached. What matters to you is that the number of these molecules present in a specific body of water (like your aquaponic system) is what determines water "hardness".
Carbonates are also a buffer.
Buffers create a weird dynamic in your water that you have to understand to manage.
This dynamic happens because of two things:
1) The first thing is a characteristic of buffers which allows them to dissolve into and precipitate out of solution, but only within a certain pH range. (For carbonates, this pH range is somewhere around 7.5 to 10 on the pH scale.)
2) The second thing is the fact that carbonates are basic, so when they dissolve or precipitate, it affects the pH of the solution.
For example: Say you just built an aquaponic system and filled it with tap water that has high carbonates and a pH of 8.0. You keep trying to lower the pH, but every time you get close to 7.5, carbonates dissolve into the solution; and since the carbonates are basic, they cause it to become more basic, and bump the pH up again.
You won't be able to lower the pH below 7.5 until all of the carbonates have been dissolved. (And then it's likely that you will over-correct and pH will plummet way lower than you want it to.)
On the other side of things, when the solution becomes too high (basic), carbonates will precipitate out of the solution, lowering the pH again.
This is what a buffer does, and it makes management of pH a real pain.
Often, the attempt to manage hard water causes results in a crashed system.
How to avoid the carbonate blues
If your source water is pulled from an aquifer, it’s likely that there will be limestone dissolving into the water.
You can test your carbonates by testing your hardness.
If your hardness is near 250 ppm, you should consider using an RO filter.