Xenopic

Auto-Updating Your Banner

Your banner is a living canvas. Follower counts climb, your activity graph fills in, and your MRR chart moves. Auto-updates are how those changes reach your actual X profile — either on a schedule or the moment you press a button.

This page explains what runs, how often, and how to slow it down or switch it off.

Two things that update (don't confuse them)

It helps to separate two independent clocks:

  1. Data refresh — when Xenopic re-fetches numbers from outside services (GitHub, X activity, followers, Stripe). Each source has its own service-level cadence.
  2. Banner push — when Xenopic re-renders the image and uploads it to X.

A push always uses the most recent data on hand. Refreshing data and pushing the banner are separate steps, so a fresh number may appear on your next scheduled push rather than instantly.

Read-only, banner-only

Xenopic's access to your X account is read-only for your profile data, plus the single ability to update your banner image. It never posts, follows, likes, or DMs on your behalf. A banner push only ever replaces the banner picture.

What runs per plan

PlanBanner pushes
FreeManual only — you press the update button
ProAutomatic on a schedule, every few minutes
PremiumAutomatic on a schedule, every few minutes

On Free, nothing reaches X until you ask it to. Your edits are saved in the builder; they go live the instant you push.

On Pro and Premium, a background worker wakes on a short cycle (every few minutes), checks whether your banner has changed since the last push, and uploads a fresh image if so. If nothing changed, it skips the push — so X only ever sees a new image when there's genuinely something new.

The manual update button

Every plan has a one-click way to apply changes right now, without waiting for the next cycle. In the builder you'll see a small sync control under the active segment:

  • Apply now — push the current banner to X immediately.
  • A short countdown (e.g. Applying to X in 12s) appears while you're actively editing, so rapid tweaks get batched into a single push instead of many.
  • Synced with a relative time confirms the last successful push.

If auto-update is off for a segment, your edits still save automatically — you'll just see Changes saved with an explicit Apply to X button when you're ready to go live.

Choosing a slower frequency — or never

Auto-update is a per-segment toggle, so you stay in control:

  • On — Pro/Premium push automatically on the standard short cycle.
  • Slower — pick a less frequent cadence if you'd rather not refresh so often.
  • Off / Never — Xenopic stops pushing on a schedule entirely. Your banner only changes when you press the manual button. This is also the setting to use if you want to pause everything without losing your design.

You can confirm the current state in Settings under your stored profile data — Banner Updates reads Active or Paused, alongside the cron frequency.

How a banner is built

When a push is due, the worker renders your banner server-side:

  1. It starts from your background (uploaded image, predefined art, solid color, or gradient).
  2. Each visible widget is drawn as a crisp vector and composited onto the 1500×500 canvas using sharp.
  3. The finished image is encoded at high quality and uploaded to X over your authorized connection.

Because rendering happens on the server, your banner stays current even when your browser is closed.

How fresh is the data?

External numbers refresh on their own service-level schedules — not per-user, and not on every push. Roughly:

  • GitHub activity — refreshed daily.
  • X activity — refreshed every couple of days.
  • Followers — refreshed on a longer, periodic basis.
  • Stripe MRR — refreshed about weekly.

You can always trigger a manual data sync from Settings → External Data Sync if you want the latest numbers before your next push.

Want it live instantly?

Make your edits, then press Apply now. That skips the wait and pushes immediately — handy right before you share your profile.

Next steps