I work with local businesses, so here's something specific for Yusuf: there's a third option in your case, and it's cheaper than both.
A gym is a neighborhood business. People search for "gyms near me." What determines ranking in this search isn't your blog posts, but the quality of your map listing.
You can do these things this week, and none of them cost money:
Have real, up-to-date photos in your map listing — the interior, equipment, entrance. Don't use stock photos; it's obvious.
Enter your opening hours accurately and completely, including holidays.
Add your services one by one: personal training, group classes, which classes are available.
Ask your current members for reviews. Don't force it, just ask those who are satisfied. And reply to every review you get.
Create a separate page for each class on your site and list the prices. Gyms that don't list prices get a lot of calls but don't gain many members, because most callers just check the price and hang up.
Once these are set up, continue running ads. Then ads will work better because the person clicking lands on a proper page.