Under-specification of terminal requirements: The early WAP standards included many optional features and under-specified requirements, which meant that compliant devices would not necessarily interoperate properly.
Lack of user agent profiling tools: It quickly became nearly impossible for web hosts to determine if a request came from a mobile device, or from a larger more capable device.