Quick Diagnostics Checklist
Before diving into specific issues, run through this checklist:1
Check Browser Console
Open Developer Tools (F12) and look for errors in the Console tab
2
Verify Network Requests
Check the Network tab for failed API calls or 401/403 errors
3
Validate Token
Ensure your guest token is valid and not expired
4
Confirm IDs
Double-check dashboard-id and metric-id values
5
Test with Sample
Try the sample token/dashboard to isolate the issue
Common Issues
Dashboard Not Rendering
Component shows blank or nothing renders
Component shows blank or nothing renders
Symptoms:
- Empty space where dashboard should be
- No errors in console
- Component seems to load but shows nothing
- Ensure plugin is imported before rendering:
- Check for web component support:
- Verify container has height:
- Check z-index conflicts:
Dashboard loads then disappears
Dashboard loads then disappears
Symptoms:
- Dashboard appears briefly then vanishes
- May happen on route changes or re-renders
- React: Prevent re-renders destroying the component:
- Vue: Use v-show instead of v-if:
- Check for parent component unmounting: Add key prop to prevent recreation
Spinner loads infinitely
Spinner loads infinitely
Symptoms:
- Loading spinner never stops
- Dashboard never renders
- Invalid token:
- Wrong dashboard ID:
- Network blocked:
- Check browser extensions (ad blockers, privacy tools)
- Verify no corporate firewall blocking
- Check CORS settings
- Token expired:
Authentication & Token Errors
401 Unauthorized Error
401 Unauthorized Error
Token Expired Error
Token Expired Error
Symptoms:
- “Token has expired” message
- Dashboard stops working after some time
- Set appropriate expiry time:
- Implement token refresh:
- Handle token expiry event:
CORS Errors
CORS Errors
Symptoms:
- “Access to fetch blocked by CORS policy”
- Cross-origin errors in console
- Generate tokens from backend (not frontend):
- Whitelist your domain:
- Go to Data App settings
- Add your domains to allowed origins
- Include all environments (dev, staging, prod)
- Check for mixed content (HTTP/HTTPS):
Display & Styling Issues
Dashboard overlaps or z-index issues
Dashboard overlaps or z-index issues
Symptoms:
- Dashboard hidden behind other elements
- Modals or dropdowns don’t appear correctly
- Set appropriate z-index:
- Check parent container:
- Use isolation:
Responsive layout issues
Responsive layout issues
Symptoms:
- Dashboard doesn’t fit screen
- Charts overlap on mobile
- Scrolling issues
- Ensure container is responsive:
- Set viewport meta tag:
- Use responsive theme:
Theme not applying
Theme not applying
Symptoms:
- Custom colors not showing
- Font changes not working
- Theme options ignored
- Stringify theme object:
- Check theme structure:
- Verify CSS specificity:
Performance Issues
Slow loading dashboard
Slow loading dashboard
Symptoms:
- Dashboard takes long to load
- Metrics render slowly
- Poor performance with large datasets
- Enable caching in workspace settings:
- Go to Workspace Settings → Cache
- Enable query result caching
- Set appropriate TTL
- Apply filters to limit data:
- Optimize metrics:
- Reduce number of data points
- Use aggregations
- Limit table rows
- Consider pagination
- Lazy load dashboards:
Memory leaks
Memory leaks
Symptoms:
- Page slows down over time
- Browser tab crashes
- Increasing memory usage
- Clean up on unmount:
- Remove event listeners:
- Limit re-renders:
Framework-Specific Issues
Issue: Component not updating on prop changesIssue: TypeScript errorsIssue: Next.js SSR errors
Debugging Tips
Enable Debug Mode
Add debug logging to your implementation:Inspect Component State
Monitor Network Requests
Test Token Validity
Error Messages Reference
Error Message | Cause | Solution |
---|---|---|
Token is invalid or expired | Expired or malformed guest token | Regenerate token from backend |
Dashboard not found | Wrong dashboard ID | Verify dashboard-id attribute |
Unauthorized access | No permission to view dashboard | Check Data App permissions |
CORS policy error | Frontend trying to call API directly | Generate tokens from backend |
Failed to fetch | Network or firewall issue | Check network connectivity |
Invalid data app | Wrong dataAppName in token request | Verify Data App name |
Rate limit exceeded | Too many API calls | Implement rate limiting/caching |
Getting Help
If you’re still stuck after trying these solutions:Test Harness
Use our test environment to isolate issues
Sample Implementation
Check working examples in playground
API Documentation
Review complete API specs
Support
Contact our support team
Best Practices to Avoid Issues
Always generate tokens server-side
Always generate tokens server-side
Never expose API tokens in frontend code. Use your backend to generate guest tokens.
Implement error handling
Implement error handling
Always handle token generation failures and network errors gracefully.
Use TypeScript
Use TypeScript
Type safety helps catch issues during development.
Test across browsers
Test across browsers
Verify your implementation works in Chrome, Firefox, Safari, and Edge.
Monitor in production
Monitor in production
Set up error tracking (Sentry, LogRocket) to catch issues early.