well my problem is if i set lets say 10gb to a user and the user used 9gb of them then the next time he opens the internet if he used the remaining 1 gb it wont automatically cut him off the internet it'll wait until he logs out or the host is removed somehow
Using "serious" Captive Portal software on the router, i.g. "coova-chilli" (CP) on openwrt(OS), your functionality is no problem. It is implemented in coop between coova and freeradius, which does the traffic accounting and signals the drop of connection, in case traffic limit exceeded. One of the reasons, I abandoned mikrotiks hotspot many years ago, because too limited for "above basic" usage.
You can run openwrt plus coova on various mikrotiks, BTW.
However, "coova-chilli", used in various big money hotspot softwares, has a steep learning curve because of its large set of functions.
_MAY_BE_ mikrotiks上可以做类似的热点雷竞技网站tuff, because it also can be configured using radius.