Nó phụ thuộc rất nhiều vào bối cảnh. Đối với tôi, "bản địa" có nghĩa là một ứng dụng sử dụng các tính năng và cơ chế mà hệ điều hành cung cấp, thay vì tự chạy. Điều đó có thể áp dụng cho các tính năng giao diện người dùng (nút, cửa sổ, hộp thoại chọn tệp), cũng như cho các tính năng dưới mui xe (ví dụ: tích hợp với "Mở bằng ...").
Ví dụ: trên Windows, một ứng dụng gốc sẽ sử dụng "WinAPI" để có cùng các nút, thanh cuộn, v.v. như các ứng dụng khác. Chúng hoạt động giống hệt nhau trong các ứng dụng hệ thống (notepad) như trong các ứng dụng của bên thứ ba.
Các ứng dụng Java thường sử dụng "Xoay" và trông hoàn toàn khác nhau, vì chúng tự vẽ các điều khiển của chúng, thay vì sử dụng các hệ thống. Lợi ích là chương trình trông giống nhau trên mọi HĐH.
Một tùy chọn khác để xây dựng GUI là bộ công cụ đa nền tảng như "QT". QT sẽ yêu cầu HĐH vẽ các điều khiển cho nó, vì vậy chúng sẽ trông rất tự nhiên, bất kể bạn đang chạy Windows, OSX hay Linux. Một hộp văn bản QT sẽ trông giống như một hộp văn bản windows, tuy nhiên nó không phải là một bản gốc, mà là một loại mô phỏng. Bạn có thể nhận thấy sự khác biệt nhỏ trong chi tiết (ví dụ: menu ngữ cảnh, phương thức nhập, v.v.).
Lưu ý khi mọi người nói "bản địa", họ thường có nghĩa là một chương trình được biên dịch thành mã máy thay vì mã trung gian, được chạy trong một máy ảo (như các chương trình Java và .NET). Trong các ví dụ trên, ứng dụng WinAPI và ứng dụng QT đang sử dụng mã máy, trong khi chương trình Java được biên dịch thành mã byte Java. Việc sử dụng này hiện nay có một chút vấn đề, bởi vì nhiều người dùng sẽ xem xét một ứng dụng .NET được làm tốt cho Windows - nó chỉ là một .exe, sử dụng các điều khiển và API chính xác tương tự trong phần mềm và gần như không thể phân biệt được với một chương trình được biên dịch mã máy.
Tương tự như vậy, tôi sẽ xem xét một chương trình sử dụng GTK, biết về cấu trúc hệ thống tệp Unix và có lẽ có trong gói .deb dành cho Ubuntu hoặc Gnome. Thậm chí có những ứng dụng Gnome của bên thứ nhất được viết bằng javascript mà người ta có thể gọi là bản địa! Điều tương tự cũng áp dụng cho các ứng dụng "Metro" của Windows 8, có thể được viết bằng nhiều ngôn ngữ, một số được biên dịch, một số thì không.