Have a look at kid control, it can probably do what you're asking for quite elegantly
Another option is to create a firewall passthrough rule in the forward chain with that public IP as the dst-address, and then you can just monitor the counters for that rule, and reset the counters daily if you want..
/ip/firewall/mangle/add chain=forward in-interface-list=LAN out-interface-list=WAN dst-address=208.65.1.1 action=passthrough comment="traffic counter for public ip 208.65.1.1"
/system/scheduler/add name="reset-traffic-counters" interval=1d start-date=may/04/2022 start-time=00:00:00 on-event="/ip/firewall/mangle/reset-counters [find where comment~\"^traffic counter for public ip*\"]"
Of course you could also be more specific and only monitor traffic between that public IP and a single host in your LAN (eg 192.168.0.123), as follows:
/ip/firewall/mangle/add chain=forward in-interface-list=LAN out-interface-list=WAN src-address=192.168.0.123 dst-address=208.65.1.1 action=passthrough comment="traffic counter for public ip 208.65.1.1"
You could also modify the scheduler script to send a daily report of the traffic via E-mail before resetting it, something as follows:
/system/scheduler/add name="reset-traffic-counters" interval=1d start-date=may/04/2022 start-time=00:00:00 on-event="\
:local bytes [/ip/firewall/mangle/get [find where comment=\"traffic counter for public ip 208.65.1.1\"] bytes]\r\n\
/tool/e-mail/send to=email@address.com subject=\"Traffic report for public IP 208.65.1.1\" from=username@domain.com server=imap.domain.com port=587 tls=no user=username@domain.com password=\"123456\" body=\"Daily traffic for 208.65.1.1: \$bytes bytes\"\r\n\
/ip/firewall/mangle/reset-counters [find where comment~\"^traffic counter for public ip*\"]"