Software Alternatives, Accelerators & Startups

Devise VS JSON Web Token

Compare Devise VS JSON Web Token and see what are their differences

Devise logo Devise

Flexible authentication solution for Rails with Warden.

JSON Web Token logo JSON Web Token

JSON Web Tokens are an open, industry standard RFC 7519 method for representing claims securely between two parties.
  • Devise Landing page
    Landing page //
    2022-11-04
  • JSON Web Token Landing page
    Landing page //
    2023-08-19

Devise features and specs

  • Comprehensive Functionality
    Devise provides a broad range of authentication features out-of-the-box, including registration, login, password recovery, and session management.
  • Modular and Extensible
    Devise is built with a modular approach, allowing developers to pick and choose the modules they need. It also offers hooks and callbacks for further customization.
  • Community Support
    As one of the most popular authentication solutions for Rails, Devise has extensive community support, abundant documentation, and numerous tutorials, making it easier to get help and find resources.
  • Security
    Devise follows industry-standard security practices, offering features like encryption, configurable secret keys, and other mechanisms to protect against common vulnerabilities.
  • Integration with Rails
    Devise is specifically designed to integrate seamlessly with Ruby on Rails, ensuring a smoother development experience and better compatibility with other Rails components.

Possible disadvantages of Devise

  • Complex Configurations
    For developers new to Devise or those requiring highly custom authentication systems, the configuration can be complicated and may have a steep learning curve.
  • Opinionated Defaults
    Devise comes with many pre-set defaults that may not align with every project’s requirements. Customizing these defaults can sometimes be cumbersome.
  • Dependency Management
    Devise is a large library with several dependencies. Keeping these dependencies up to date and compatible with the rest of the application can sometimes be challenging.
  • Performance Overhead
    Due to its comprehensive feature set, Devise can introduce performance overhead compared to more lightweight authentication solutions.
  • Ease of Customization
    While Devise offers many customization options, very specific or unconventional authentication workflows can be difficult to implement, requiring significant overrides or extensions.

JSON Web Token features and specs

  • Stateless
    Since JWTs are self-contained, they do not require server-side sessions, enabling stateless authentication and reducing server memory usage.
  • Scalability
    JWTs can easily be used in distributed systems and microservices architectures due to their stateless nature, facilitating horizontal scaling.
  • Decentralized Issuance
    Multiple issuers can create and sign their own tokens, allowing for more decentralized and flexible authentication mechanisms.
  • Performance
    JWTs eliminate the need for database lookups during authenticating requests, as the token contains all the necessary information, which can lead to performance improvements.
  • Cross-domain and Mobile Compatible
    JWTs are widely supported by different platforms and can easily be used in cross-domain situations and with mobile applications.
  • Security
    JWTs can be signed and optionally encrypted, ensuring the authenticity and integrity of the data they carry.

Possible disadvantages of JSON Web Token

  • Size
    JWTs tend to be larger than session IDs, which can increase the amount of data transmitted during requests.
  • Expiration Handling
    Managing token expiration can be complex. Once a token is issued, it remains valid until it expires or is explicitly revoked.
  • No Built-in Revocation
    Unlike sessions, JWTs cannot be easily revoked server-side, making it difficult to immediately invalidate tokens without additional mechanisms.
  • Security Risks
    If a JWT is intercepted or compromised, it can be used until it expires. Thus, it should be properly secured and transmitted over HTTPS.
  • Token Overhead
    Embedding too much information in the token payload can lead to performance overhead and potential data exposure risks.
  • Complexity
    Implementing JWT correctly requires a thorough understanding of security practices and token lifecycle management, which can add complexity to the system.

Devise videos

Devise Fingerboard Review

More videos:

  • Review - Figure 8 Devise Review
  • Review - Devise TV on your phone Tzumi Magic TV Best Review

JSON Web Token videos

JSON Web Tokens Suck - Randall Degges (DevNet Create 2018)

More videos:

  • Review - JSON Web Tokens with Public Key Signatures
  • Review - RFC 7519 JSON Web Token (JWT), Review

Category Popularity

0-100% (relative to Devise and JSON Web Token)
Identity And Access Management
Identity Provider
42 42%
58% 58
SSO
76 76%
24% 24
Development
100 100%
0% 0

User comments

Share your experience with using Devise and JSON Web Token. For example, how are they different and which one is better?
Log in or Post with

Social recommendations and mentions

Based on our record, JSON Web Token should be more popular than Devise. It has been mentiond 300 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

Devise mentions (45)

  • SpendWise - Budget management app (Ruby on Rails + React) - Part 3
    If you like to know how to implement Devise for user authentication, here's the link- Devise. - Source: dev.to / 9 months ago
  • Rails and Keycloak, Authentication Authorization, part one
    Use devise gem, which is probably the most famous rails authentication system. - Source: dev.to / 9 months ago
  • Should I Use jwts For Authentication Tokens?
    IMHO the stateful opaque token approach is simple enough that it can (and often does) get baked into whatever language/framework you’re using to write your app. In addition, the very nature of session tokens is such that the logic for what the token actually means/represents lives in your app, on the server. So, that may be why we don’t see more “opaque session token” standards/libraries out there as an... - Source: Hacker News / 11 months ago
  • On the road to ramen profitability 🍜 💸
    Users can signup and login via the Devise gem and create their organizations. - Source: dev.to / 12 months ago
  • Warden of Hanami - hanami.rb basic authentication
    However for smaller apps it might be an overkill. In "real-life" production systems, overengineering is one of the biggest crimes. This is true any framework and technology, so in Rails you might want to use Rodauth since it is big and interesting and challenging, but then again, if you are building a simple greenfield MVP you do not have the time or need, for a big, complex solution. In those cases Rails... - Source: dev.to / 12 months ago
View more

JSON Web Token mentions (300)

  • Guide to JWT API Authentication
    Jwt.io is a great playground to get used to working with JWTs. - Source: dev.to / 6 days ago
  • Verifying Cognito access tokens - Comparing three JWT packages for Lambda authorizers
    The Lambda authorizer code decodes and verifies the token, and its business logic determines whether the request should proceed to the backend or be denied. Cognito access tokens are JSON Web Tokens (JWTs), and to simplify our coding, we might opt for an external package to handle token verification. - Source: dev.to / about 1 month ago
  • Authentication and Authorization Best Practices in ASP.NET Core
    You can decode the created JWT token using JWT IO web site to see what's inside. - Source: dev.to / about 1 month ago
  • How To Use JWT Token In React JS
    JWT.io – A great resource to decode, verify, and generate JWT tokens. - Source: dev.to / about 2 months ago
  • 12 Must-Have Online Tools for Every Web Developer in 2025
    Category: Token Debugging & Authentication Link: jwt.io. - Source: dev.to / about 2 months ago
View more

What are some alternatives?

When comparing Devise and JSON Web Token, you can also consider the following products

Auth0 - Auth0 is a program for people to get authentication and authorization services for their own business use.

Okta - Enterprise-grade identity management for all your apps, users & devices

Spring Security - The Spring portfolio has many projects, including Spring Framework, Spring IO Platform, Spring Cloud, Spring Boot, Spring Data, Spring Security...

OneLogin - On-demand SSO, directory integration, user provisioning and more

Firebase Authentication - Application and Data, Application Utilities, and User Management and Authentication

Amazon Cognito - Amazon Cognito lets you add user sign-up, sign-in, and access control to your web and mobile apps quickly and easily. It scales to millions of users and supports sign-in with social identity providers and enterprise identity providers via SAML 2.0.