Hmm this is tricky but for me he's sort of both. I think it's important how he perceives himself and how others see him.
Heroes usually go out of their way to save others without thinking of what would happen to themselves in the process, even though it's just practically a stranger and it doesn't concern them. Luffy is also like this but the difference is he still chooses the people whom he wants to save and for reasons that would benefit him. It's not exactly for the greater good of everyone. He stands up mostly for his friends/loved ones, or if he needs the person (nakama recruitment schemes at the beginning) But he doesn't think of this as special coz why would it be? For him it's natural that people step up for a friend who's in trouble especially when nobody else is there to help them. It's also normal to fight against something you dislike. As we all know he is not bound by anything, he will resist if it is against his will. So yeah, he's saying he's not a hero because he really thinks he isn't
And Luffy grew up that way, protecting people and being protected in return (ASL childhood) so this is just automatic for him, it's nothing heroic. At the same time he doesn't care about the collateral damage as long he is able to reach his goal. It's clear in the Impel Down arc when he freed those prisoners, lol 😂
Anyway the essence of Luffy being a hero tho is mostly because of the people whose lives he touched. He can deny all he wants but for the people whom he saved surely he is perceived as their hero. His actions still show it. He's my hero too xDD