Number porting involves the service provider interacting with their underlying CLEC (licensed/regulated telephone carrier), and with
NPAC to perform the work necessary to move over the number. These companies aren't charities; they're businesses with fixed costs. The porting fees aren't meant to be a significant revenue stream, and there's no intent to be deceptive about the fee; they're simply cost-recovery fees. I've seen some carriers charge as much as $35 to port in a land line number. Google charges $20 to do this, and I can tell you that it is a headache for them, when users don't submit the
exact identifying data that the losing carrier expects to see to release the number. This is a "good thing", as it is designed to limit "slamming", or unauthorized porting.
Sometimes, some service providers make a business decision to not charge users to perform a port, as a marketing inducement to get the user's ongoing business. Other SPs may try to compete on the lowest monthly cost, and so they keep service add/change fees separate. This is the same approach taken by the "big four" mobile phone carriers, who, in a competitive slug-fest, will port in your number for free, pay off your contract, give you a phone, and give you an hour with a hooker (well, maybe not that, but you never know what John Legere will say next).
There is a small community of
Angry White Men over on DSLReports who love to whine incessantly about this company or that company who is being evil by not disclosing something, or charging for something that they think ought to be free. None of these AWM have likely ever run a successful, profitable, legitmate business. People who obsess over this stuff are welcome to join their discussions if desired.