水生城は八代川の北岸にあり、東へ伸びた丘陵のに築かれている。一般的に水生城はこの尾根にある三ヶ所の城跡を総称しており、西の竹貫城を含める場合もある。
便宜上、標高159.7mの所にある城を水生城I,その東側にある城を水生城II、東端の城を水生城IIIとして説明する。
水生城Iは三つの城の中で一番大きく中核をなす城である。主郭は山頂にあって小高く西側に土塁を設けている。東側には階段状に曲輪が続き、西側には東西に長い曲輪があり、先端は土塁によって小郭が設けられ、その先に二条の堀切を設けて遮断している。
三城の中間に位置するのが水生城IIで、この城は三重、あるいは四重ある堀切を挟んで東西に曲輪がある。西の曲輪は西半分に帯曲輪があり、東側にある堀切に面して帯曲輪は土塁を設けて遮断しており、東側からの攻撃に対して非常に厳重な防御をしている。これに対して東側の曲輪は北から東側にかけて小段を設けただけの曲輪群である。
東端に位置するのが水生城IIIで、西側の尾根を堀切で遮断し、北と東側に小段を設けた作りである。