Skip to content
Codeskop

Remote Config

Each time your app starts or a page loads, the SDK fetches its settings from Codeskop. Change them per project in the dashboard, no new release needed.

This configures the SDK, not your app

Remote config controls what the Codeskop SDK captures and sends. It isn't a feature-flag system for your own app's behavior. There's nothing to connect: the SDKs already fetch these settings from Codeskop.

Change settings in the dashboard

  1. Open SDK settings

    In the dashboard, go to Settings → SDK settings and pick the project. Available on every plan; owners and admins can change settings, everyone else can view them.

  2. Choose where the change applies

    All environments sets the project's settings. To treat one environment differently (for example, to keep every request timing in Test), choose that environment and change only what should differ. Everything else follows the project. Remove the override to go back.

  3. Save

    Devices pick up the change the next time the app starts or a page loads. Browsers may reuse the previous settings for up to 5 minutes. Turning capture off for production asks you to confirm first.

The settings

OptionTypeDescription
Captureon / offThe kill-switch. When off, the SDK stays running but captures and sends nothing (no crashes, errors, network calls or sessions), and your app works normally. Every plan.
Network monitoringon / offRecords HTTP calls (status, latency and failures) for the Network tab and API alerts. Starter and above.
ANR detectionon / offReports Android freezes of about 5 seconds. Starter and above.
Product analyticson / offCustom events, screens and identify traits for funnels, retention and segments. Growth and Scale.
Request timing sample rate0–100%The share of successful network calls that are timed. Failed calls are always kept. Up to your plan's rate: 10% on Free, 20% on Starter, 50% on Growth and 100% on Scale.
Offline queue sizeMBHow much the SDK stores on the device while offline. When full, the oldest routine events are dropped first; crashes and errors are protected. Up to 5 MB on Free, 10 on Starter, 20 on Growth and 50 on Scale.

Your plan sets the limits

Settings can only switch things off or lower them. Switches your plan doesn't include are locked in the dashboard, and sliders stop at your plan's maximum. If you change plans, the new plan's limits apply straight away; saved settings above them are capped automatically. See Plans & features.

Which SDKs apply each setting

SettingAndroid 0.3.0Flutter 0.3.0KMP / iOS (beta)Web & React 1.3.0
Capture✓✓✓✓
Network monitoring✓✓ (Android)✓✓
ANR detection✓✓ (Android)Android onlyn/a
Product analytics0.3.0+0.3.0+0.3.0+1.3+
Request timing sample rate✓✓✓✓
Offline queue size✓✓✓✓

Web SDK versions before 1.2 apply only capture and network monitoring; update with npm install @codeskop/tracker@latest (and @codeskop/tracker-react@latest for React).

How the SDK uses it

  • It's fetched once per app launch or page load, in the background, as part of initialization. It never blocks your app.
  • The latest successful response is saved on the device.
  • If a fetch fails (offline, timeout), the SDK uses the last saved settings. With none saved, it uses your in-code config, with capture on.
  • Once fetched, the remote sample rates and queue size replace the sampleRates and maxQueueMb you set in code. Treat in-code values as defaults for the first launch.

The kill-switch and your own opt-out

Turning Capture off stops every device of that project (or environment) from sending anything, as they pick up the change. It's also what happens when a project's plan isn't active. Turning it back on works the same way.

Your own opt-out is separate

setEnabled(false) pauses capture on one device, for example when a user opts out of analytics. It's independent of the dashboard setting.

Next steps