Stateless: Hiểu đơn giản là server và client không lưu trạng thái của nhau. Với mỗi một request được gửi đi đều phải được đóng gói đầy đủ thông tin để server có thể nhận và hiểu được. Điều này giúp hệ thống dễ phát triển, bảo trì, mở rộng vì không tốn công CRUD trạng thái của Client. Tuy nhiên có mặt hạn chế là làm tăng lưu lượng thông tin cần truyền tải giữa client và server.
Khả năng caching: Các response có thể lấy từ cache. Bằng cách cache các response, server giảm tải việc xử lý request, client cũng nhận được thông tin nhanh hơn.
Chuẩn hóa Interface: Nhằm đơn giản hóa và tách biệt kiến trúc, cho phép từng phần phát triển độc lập,, người phát triển đã tạo ra API cơ bản để thiết kế bất kỳ dịch vụ REST nào (dù là web hay mobile thì đều có thể kết nối vào được). Tuy nhiên khi chuẩn hóa thì ta không thể tối ưu từng kết nối được.
Phân lớp hệ thống: giảm mức độ phức tạp của hệ thống, giúp các thành phần tách biệt nhau từ đó dễ dàng mở rộng. Với mỗi một lớp chỉ trao đổi trực tiếp với lớp ngay dưới và trên nó.