Performance monitoring for browser games.
sloptimize cloud collects hitches, jitter, GPU stalls and errors from every player's browser and from your game server. It groups them by cause across builds and sessions, and shows whether each fix worked.
How it works
- Install the package.
npm install sloptimize. It records in the browser and on the server, and works on its own with no account. - Create a project. Sign in with GitHub and name it. Mint its keys on the settings page: a publishable key for the browser, a secret key for the server and CLI.
- Send records. Add a cloud sink next to the recorder you already have:
import { createRecorder, createErrorMonitor, createCloudSink } from 'sloptimize'; const rec = createRecorder({ budgetFrameMs: 16.7 }); createErrorMonitor(rec); const cloud = createCloudSink({ key: 'pk_live_…', endpoint: 'https://sloptimizejs.com/v1/ingest', build: BUILD_ID }); // every ~2 s cloud.enqueue(rec.drainRecords());
What you get
- Issues. Every cause, counted across players and builds, with its worst occurrence and the fixes applied to it.
- Timeline. p95 frame time and draw calls across all tabs, incidents per bucket, build boundaries and fix markers.
- Sessions. One player's tab: its frame-time trace and its incidents in order.
- Fixes. Each fix measured on your machine and on every player, 24 hours either side.
- API and CLI. Everything above as JSON, for
npx sloptimize, the MCP server, or a coding agent with an access token.
Free for 5,000 incidents a month. See pricing. Source and integration guide on GitHub.