It’s a good gig—if you can get it.

San Francisco recruiting network Hired.com, which specializes in connecting tech workers with companies, just released a study with surprising findings. According to its Global Flex Report, the average freelance techie working a 40-hour week banks $147,680 in gross income annually. That’s about 20%, or $25,000, more than the $122,762 that this person’s full-time employed colleague can expect to earn. For the report, Hired analyzed 175,000 job interview offers from 10,000 companies.

Of course, not every freelancer ends up doing the full 9-to-5 five days a week. There’s a body of research that suggests happiness pretty much levels off once one earns $75,000 a year and technical temps seem to have taken that to heart: the average contractor on Hired only works about 22 hours a week.

“The conversation about the future of work is changing,” says Mehul Patel, Hired’s chief exec. “People want more self-directed careers and to pick how they work.” He attributes the higher gross income earned by freelancers partly to how they often are most busy during crunch times like the run-up to year-end holiday season, when companies are pressurized to pay better. Companies also don’t have to provide benefits to contractors, though Patel says his data suggests freelancers still come out ahead after subtracting their expenses.

Meanwhile, the most lucrative freelance opportunities in America are unsurprisingly offered by companies in the Bay Area. San Francisco-based firms advertising on Hired pay an average of $103 per hour, the highest rate in the world. If you work for a company further up north in Seattle, you can expect to command a cool $97 for 60 minutes of work. However, fees are decidedly lower away from the West Coast. An engineering contractor engaged on a project for a Denver startup may take away $77/hour, while a Silicon Alley company in New York may dole out $90/hour.

Aside from geographical discrepancies, a STEM-versed freelancer’s experience obviously plays a role in determining his wages. A contractor with more than 15 years on the job typically gets offered $116 per hour, while those starting from scratch can expect around $55. Some skills are also more marketable than others, with engineering managers able to ask for $118/hour on average. By contrast, a frontend engineer may “only” be compensated $83/hour.

Could this be the future of the American worker? According to Intuit, a software provider, about 40% of the U.S. workforce, or 20 million people, will be “contingent” labor by 2020. The number of companies seeking contract workers on Hired has quadrupled in the last two years. Currently though, the average U.S. freelancer only makes $21/hour, data from financial services firm Payoneer show.

Also readSoon more people will be driving Ubers and renting out Airbnbs than working in finance

Freelancing often conjures up images of lunchtime siestas and working in one’s underwear, but that’s rarely the case. Still, while Hired’s report touches briefly on the downsides of contract work—the lack of benefits, the need to pay significant self-employment taxes and the pressure of continually hustling for a next job—it generally paints a rosy view.

That however, runs against the gist of a recent Wall Street Journal investigation into the freelance economy, which found widespread grousing about the lack of career advancement opportunities and differential treatment from full-time staffers.

For his part, Patel says that at least among technical workers, freelancers are a pretty self-selecting crowd. “It’s potentially generational, but I think people who freelance care less about their titles,” he says. “And more about if they’re doing something interesting.”