The Zigbee hardware looks quite simple to produce1, why are they so expensive?
For comparison I can get a 855 Mhz wireless module for 2-3€ but I can't find Zigbee modules under 15€.
As comments indicate there is apparently indeed a licensing and certification process involved that might indicate where some part of the price stems from.
Though well known in the automation industry, ZigBee is expensive. The protocol is computationally intense and the memory footprint is large. The ZigBee Alliance requires all implementers to join before undergoing an expensive licensing process. Competing (simpler) protocols using identical radio hardware can be implemented in lower cost processors without sacrificing performance. Most competing protocols are license free, especially when paired with hardware modules of the same ecosystem. Many vendors provide codebases and development tools for free.
Source: sep.com blog: The Most Popular Wireless Standard You’ve Never Heard Of (Part I) (emphasis mine)
It's seemingly a quite
rigorous cost- and time-consuming process of which you can find the gist on the Zigbee Alliance certification page. That page also includes the very helpful information, "Test specifications only available to Alliance members in our Members Area."
Each product with a Zigbee logo has to go through that process. Being "computationally intense" and having a "[large] memory footprint" doesn't help bringing the cost down either.
There are a number of 802.15.4 solutions which are not Zigbee, and cost less. See this article: "What’s The Difference Between IEEE 802.15.4 And ZigBee Wireless?"
As I understand it, to use the label "Zigbee" you must comply with certain requirements and guarantee interoperability with other Zigbee devices. Otherwise it would be "Zigbee-like" or some such. It's like USB, if you use that label you must comply with USB requirements (you also must purchase VID numbers), it's similar to a block of MAC (formerly OUI numbers) from IEEE. Doing that testing, joining the Zigbee alliance, and buying a Zigbee ID number (you also need a MAC address) are not free. Hence the added cost of being officially Zigbee. If you don't want to interoperate with other Zigbee devices then you can use one of many 802.15.4 open protocols. If you do want full Zigbee functionality and only need a few modules, the extra cost is insignificant. If you want to be a Zigbee manufacturer, then you need to bite the bullet and be official.
On the one hand this seems a hassle for casual users. On the other hand, if your Zigbee network is mission critical, you don't want half-baked nodes corrupting its operation.
You can get Microchip's MRF24J40 based modules for far less than that, around $6. But it's known to be quite old and buggy. A more modern one would be Silabs MGM111 for $7-8 in small quantities.
There isn't going to be one hobbyist-friendly though because the Zigbee licensing effectively prohibits open-source stacks at least in Zigbee layer. So you are locked into silicon vendor radio stacks when implementing Zigbee, however you are free to muck about with other 802.14.5 solutions like Thread, which does have open source stacks.
There are also quite new chips out there that are 2.4Ghz multi-protocol by Nordic and TI etc that are designed to run BLE or 802.14.5 based solutions. For example, any nRF52840 based module from Nordic or it's module partners ( Rigado BMD-340, Raytac MDBT50, Laird BL654) can run Zigbee at least in theory, but you have to obtain the right SDK from Nordic with Zigbee part being closed source.
EDIT: OpenThread.io has a nice overview of relatively modern flexible 802.14.5 chipsets, all those are hacker-friendly in that they can run OpenThread, and obviously come with Zigbee as well.
I know it's pretty old thread, but still.. Have you heard about:
So.. it is possible to get the stack for free and to get cheap HW, e.g. CC2531.. Only problem I can see is that it is not that easy to compile (IAR license necessary) and even more complicated to grasp the whole zigbee specification and concept to be able to implement own device..