Settings
Settings is the boring-but-important room. No charts here, no green revenue, no drama. What it does have are the levers that quietly decide half of what you'll see on every other screen: what your goals are called, whether you get an email when a domain is about to die, and whether the landing file manager even starts. The classic UI scattered these levers across three or four different screens — we consolidated them into one tabbed screen, opened from the account menu.
Everything you change here lands in the same tracker config blob the classic interface reads. Rename a goal in Lighter and the classic Reports and campaign postbacks see exactly the same thing. This isn't "interface settings" — it's tracker settings.
What's on screen
Up top, a tab strip and, for gang admins, a scope switch. Below, the active tab's body with its own Save button. Tabs are independent: save one and the rest are untouched (the config merges partially — keys you didn't touch survive).
Scope switch (scope) — gang admins only:
- Mine — you edit your personal tracker config.
- Team — you edit the shared team config (same goals, events, etc., but for the whole crew). A regular member never sees this switch.
Goals tab
A goal is a named action you count on a postback: registration, deposit, repeat order. It's what later shows up as its own column in Reports and its own filter in Conversions. There are exactly five slots — g1..g5.
A five-row table, each row three fields:
- Active — a toggle. A disabled slot shows nowhere.
- Code — the short machine id (
reg,dep,rebill). Cleaned like a link: latin, digits, hyphen/underscore. - Name — the human-readable label ("Registration", "First feed").
Name and activate a goal:
- Open the Goals tab.
- In a free slot, flip Active on.
- Type a Code — short, latin (e.g.
dep). - Type a Name — how it should read in reports ("First feed").
- Click Save.
Done — the tracker shows a "Settings saved" toast, and the new goal appears immediately as a Reports column and a Conversions filter option. No page reload needed.
Events tab
Events are exactly like goals but for intermediate actions: "add to cart", "catalog view". Also five slots — e1..e5, same fields (Active · Code · Name) and the same rules. Configure it identically to goals (see the steps above), save with its own button.
Domains tab (notifications)
This is where domain-expiry notifications live — the ones not on the Domains screen itself. The Domains screen only shows the "days left to live" counter; to make the tracker message you when a domain is about to die, you switch it on here.
Email block:
- Notify by email (
domem) — turns on expiry emails. - Email digest (
domeme) — send as one summary instead of per-domain.
Telegram block:
- Notify in Telegram (
domtg) — turns on messages to a bot. - Telegram digest (
domtge) — summary instead of per-domain. - Bot key (
domtgk) — your Telegram bot's token. - Chat ID (
domtgc) — exactly where to send (your DM or a group).
Configure domain-expiry alerts:
- Open the Domains tab.
- Want emails — flip Notify by email on; want one summary — add Email digest.
- Want Telegram — flip Notify in Telegram on.
- Create a bot with @BotFather, copy the issued token into Bot key.
- Fill in the Chat ID — where the bot should write.
- Click Save.
/newbot, give it a name — it hands you a token like 1234:AbCd…. That goes in Bot key. To get the Chat ID, send your bot any message and read chat.id — the @BotFather hint sits right under the field.Storage tab
Storage is the remote server where your landings physically live. Lighter has no local disk: every landing file sits on a storage server, and the file manager on the Landings screen talks to it over HTTP. Until storage is set up, the landing file manager doesn't work (the server simply returns nothing, silently).
Fields:
- Active (
storage) — turns on your own storage. - Domain (
domain) — your storage server's domain. - Control URL (
control) — the address of the control script on the server. - Key (
key) — the secret key the tracker authenticates with. - Parking IPs (
ips) — the IPs the server serves landings from. - Install one-liner — a ready command that installs the control script on the server (copy only, never persisted).
- Proxy-IP note — the IP/address the tracker calls your server from (needed so you can allow-list it on the server side).
Set up landing storage:
- Open the Storage tab.
- Click copy on the install one-liner — you get a command like
wget -q https://cpa.st/setup/track.sh && bash track.sh {host} {key}. - Run it on your server — it deploys the control script.
- Come back, fill in the server's Domain, Control URL and Key.
- Fill in the Parking IPs.
- Check the proxy-IP note — allow-list that IP on the server side.
- Flip Active on and click Save.
After that, the file manager on the Landings screen comes alive: file listing, code editor, ZIP upload — all of it now runs through this storage.
PrivateFlare tab
PrivateFlare is a landing-delivery accelerator/optimiser (cache, WebP, minify, HTTPS). The whole tab is not always available: if the service isn't enabled for you, the tab simply isn't there.
Fields:
- Sync (
pf) — the master toggle, turns PrivateFlare on. - API key (
pfkey) — the service access key. - Balance — read-only, pulled from the PrivateFlare server.
- Auto-IP (
pfnodes) — auto-pick nodes/addresses. - Cache (
pfcache) — pick a cache mode from a list. - Convert to WebP (
pfimgcv) — re-encode images to WebP. - Auto-minify resources (
pfminif) — compress HTML/CSS/JS. - Auto-redirect to HTTPS (
pfhttps) — force traffic to https.
Configure PrivateFlare:
- Open the PrivateFlare tab (no tab = the service isn't enabled for you).
- Enter the API key.
- Check the Balance — it loads automatically.
- Pick a Cache mode and flip the toggles you want (WebP · minify · HTTPS).
- Optionally turn on Auto-IP.
- Flip Sync on and click Save.
Scope: mine and team settings
The Mine / Team switch up top exists only for gang admins. It decides whose config you edit: your personal one or the shared team one. Everything reads and writes the same — only the target changes.
The core principle: it's one config for the whole tracker
Everything you edit on this screen lands in one tracker config blob (partial-merge: edit one section and the other keys survive). Three things worth keeping in mind follow from that:
- The classic sees your edits. The same config is read by the classic interface — its Reports, campaign postbacks, the domains screen. Change it here, it changes there.
- Goals and events ripple instantly. A goal/event edit immediately changes the goal and event columns in Reports and the goal filter in Conversions — with no page reload.
- Sections are independent. Saving Goals doesn't touch Domains; saving Storage doesn't touch PrivateFlare. Each tab has its own Save.