First of all, this is a big design question that is difficult to answer in a forum post.
How do you mean running BGP?
Would you like to pick up global routing table to your devices and then route/filter traffic on your own and peer with ISP where you own your AS number and IP-addresses, or would you like to just peer with the ISP and advertise your IP-address subnet/AS and let them do the routing/filtering?
There is a lot of cons that come with handling all the routing yourself. You have to take security in consideration, regarding denial of service attacks etc. Running full BGP on your devices also demands attention and configuration updates if you want it to run smooth.
For the most of the cases, it's enough to just peer with the ISP, advertise your subnet and receive an default route from the ISP if you have some need or requirements to run BGP (your own AS/subnet).
Make sure your devices is able to run full BGP if the design requires it. Otherwise, talk to the ISP and let them advertise your public IP subnet and just receive default route.