Quick Diagnostics
If you’re seeing errors, start here:Check Browser Console
Verify Installation
window.grain in the console. If it returns undefined, the SDK isn’t loaded.Check Network Tab
clientapis.grainql.com in the Network tab (F12 → Network).Authentication Errors (401)
Session Expired / Token Not Found
Error Message:- “Your session has expired. Please refresh the page or sign in again.”
- “Authentication required”
- Your login session expired (tokens expire after inactivity)
- Cookies were cleared or blocked
- Using the app in private/incognito mode
Quick Fix
Quick Fix
- Click the Reload Page button in the error message
- If that doesn’t work, sign out and sign back in
Persistent Issues
Persistent Issues
- Check if your browser is blocking third-party cookies
- Disable ad blockers or tracking protection for
grainql.com - Try a different browser to isolate the issue
- Clear browser cache and cookies for
grainql.com
For SDK Users
For SDK Users
Network Errors
Connection Failed / Cannot Reach Server
Error Message:- “Network connection issue. Please check your internet connection and try again.”
- “Failed to fetch”
- “Network error: Unable to connect to server”
- No internet connection
- Firewall or proxy blocking requests
- VPN interfering with connections
- DNS resolution issues
Basic Troubleshooting
Basic Troubleshooting
- Check your internet connection
- Try accessing https://clientapis.grainql.com/health directly
- If the API is unreachable, check if your network blocks analytics services
Corporate/Enterprise Networks
Corporate/Enterprise Networks
- Whitelist
clientapis.grainql.comin your firewall - Whitelist
*.grainql.comto allow all subdomains - Check if your proxy requires authentication
- Contact your IT department to allow analytics traffic
Content Blockers
Content Blockers
- Temporarily disable browser extensions
- Add
grainql.comto your extension’s whitelist - Try loading the site in incognito mode (without extensions)
Server Errors (500, 502, 503)
Internal Server Error / Service Unavailable
Error Message:- “Our servers are experiencing issues. Please try again in a few moments.”
- “API error 500”
- “Service temporarily unavailable”
Wait and Retry
Check Status
Report Persistent Issues
- Error message and code
- Time the error occurred
- What action you were trying to perform
Rate Limiting (429)
Too Many Requests
Error Message:- “Rate limit exceeded. Please try again later.”
- “Too many requests”
If You Hit Event Limits
If You Hit Event Limits
If You Hit Query API Limits
If You Hit Query API Limits
Upgrade Your Plan
Upgrade Your Plan
SDK Not Loading
window.grain is Undefined
Symptoms:
- Console error:
grain is not defined - Events not being tracked
- No network requests to
clientapis.grainql.com
- npm/yarn Package
- CDN Script Tag
- Google Tag Manager
- Package is installed:
npm list @grainql/analytics-web - Import statement is present
- Init is called before tracking
Events Not Appearing in Dashboard
Events Sent But Not Visible
Possible Causes:1. Time Delay
1. Time Delay
2. Wrong Tenant ID
2. Wrong Tenant ID
3. Events Filtered Out
3. Events Filtered Out
- Date range too narrow
- Event name filters active
- User filters excluding your events
4. Privacy/Consent Blocking
4. Privacy/Consent Blocking
5. Network Issues
5. Network Issues
- Failed POST requests to
/v1/events - CORS errors
- 4xx or 5xx status codes
Dashboard Errors
Data Not Loading / Blank Charts
Error Message:- “Error fetching dashboard data”
- “Failed to load analytics”
Check Date Range
Verify Events Exist
Check Permissions
Clear Browser Cache
Mission Control Not Loading
Specific to Mission Control (conversion tracking):No Goals Configured
No Goals Configured
- Go to Mission Control
- Click “Configure Goals”
- Set up your first conversion goal
Insufficient Data
Insufficient Data
CORS Errors
Cross-Origin Request Blocked
Error Message:- “Access to fetch at ‘https://clientapis.grainql.com/…’ blocked by CORS policy”
- “No ‘Access-Control-Allow-Origin’ header”
Add Your Domain
Add Origin
https://example.com)For development: http://localhost:3000Wildcards for Subdomains
https://*.example.com to allow all subdomainsTypeScript Errors
Type Issues with SDK
Common Issues:Module Not Found
Module Not Found
Window Type Error
Window Type Error
Event Properties Type
Event Properties Type
Performance Issues
Slow Page Load / High Bundle Size
If using npm package:Integration-Specific Issues
Next.js Issues
Next.js Issues
React Issues
React Issues
Shopify Issues
Shopify Issues
WordPress Issues
WordPress Issues
Validation Errors (400)
Invalid Input / Malformed Request
Common Validation Errors:Tenant ID Format
Tenant ID Format
Event Name Format
Event Name Format
Event Properties
Event Properties
Still Having Issues?
If none of the above solutions work:Live Chat
Email Support
- Error message and code
- Browser console logs
- Network tab screenshot
- Steps to reproduce