Infinite Redirect Loop - Auth Redirect Not Ending
Application gets stuck in redirect loop. User is continuously redirected between login and dashboard, browser shows error about too many redirects.
Page loads then immediately redirects, causing infinite loop.
Error Messages You Might See
Common Causes
- Auth check redirects to login even when authenticated
- Login page redirects to dashboard but user isn't logged in
- Circular redirect condition logic
- Session not persisting between redirects
- Middleware checking wrong condition
How to Fix It
Check auth logic: if(!user) redirect to login. If user, allow access
Ensure session loads before checking auth: check isLoading state first
Add condition to break loop: if(isLoggedIn) { don't redirect to login } else { don't redirect to dashboard }
Use middleware.ts for centralized auth checks with proper conditions
Debug: log redirect decisions to console
Real developers can help you.
You don't need to be technical. Just describe what's wrong and a verified developer will handle the rest.
Get HelpFrequently Asked Questions
How do I prevent redirect loops?
1) Check user state exists before redirecting, 2) Have clear public/private routes, 3) Test all edge cases
What if login page redirects to dashboard?
Check: if user is already logged in (don't show login), if not authenticated (show login)
Should I use middleware or useEffect for redirects?
Middleware (Next.js) is better - handles before page renders. useEffect causes layout shift