Le applicazioni native utilizzano Objective C o Java. Le applicazioni Web utilizzano HTML5, CSS3 e Javascript, in esecuzione in un browser.
Le applicazioni native potrebbero dover essere scritte più di una volta, per soddisfare le richieste specifiche della piattaforma nativa, come il linguaggio di programmazione.
Le applicazioni Web potrebbero avere un accesso limitato alla piattaforma nativa sottostante e potrebbero non funzionare altrettanto bene quanto le controparti native.
Alcuni fornitori offrono toolchain che consentono di creare applicazioni native una volta e di eseguirle su più piattaforme. In alcuni casi, lo fanno creando un'applicazione web e fornendo un'API sottostante di base da indirizzare.