Getting Started

A practical walkthrough from zero to running. If you want the strategy explainer instead, see how it works.

Before You Start

You'll need four things ready before applying. Two are setup steps on Polymarket; two are info you'll provide to us.

Polymarket accountCreated via MetaMask (not Google or Apple sign-in — see why below)
USDC funded on PolymarketStart with $50–100 to confirm the setup works. The strategy needs $200+ for the per-trade economics to work statistically — see Funding considerations.
A dashboard passwordYou'll set this when provisioning. Minimum 12 characters.
Email + DiscordEmail receives the setup link after payment. Discord is how we contact you about issues.

Step 1 — Set Up Polymarket

Why MetaMask is required

The bot needs your Polymarket private key to sign trades on your behalf. Polymarket signups via Google or Apple use Magic Link wallets, which abstract the key away — you never see it, and we can't extract it. Only MetaMask (or another self-custody wallet that lets you export the private key) works.

Already signed up via Google or Apple? You'll need to create a new Polymarket account using MetaMask. Move your USDC over once the new account is set up. Apply only after the MetaMask account is the one you'll use.

If you're in the US

Polymarket geoblocks US IPs at signup. You'll need a VPN connection to a non-US country (any reliable provider — South Korea, Canada, EU all work) for the signup flow only. Once your bot is running, the bot handles its own non-US routing on our side; you don't need a VPN to view the dashboard.

Account creation walkthrough

  1. Install the MetaMask browser extension. Save your 12-word seed phrase somewhere safe — losing it means losing the account.
  2. Connect to your VPN (US users) and visit polymarket.com.
  3. Click Sign Up and connect MetaMask when prompted.
  4. Complete the Enable Trading flow. Polymarket will walk you through three MetaMask signature requests: deploy proxy wallet (automatic, no fee), enable trading (sign), approve tokens (sign). Each is a one-time action.
  5. Deposit a small amount of USDC (Polygon network) — $20–50 is plenty to test.
  6. Place a single $1 test trade on any market and confirm it fills. If anything goes wrong here, fix it before proceeding — the bot can't unstuck a half-configured Polymarket account.

Step 2 — Apply and Pay

  1. Submit the form at notiken.com/apply with your name, email, and Discord username. Application review usually takes 24–48 hours.
  2. If approved, you'll receive an email with a Stripe Checkout link. Pricing is on the pricing page. Stripe handles billing — your card details never touch our servers.
  3. After payment confirms, a second email arrives with your one-time setup link at notiken.com/setup?token=<...> — valid for 7 days, single-use.

Step 3 — Provision Your Bot

Click the setup link from your email. You'll see three fields:

Both submit directly over HTTPS to the provisioning service. The operator never sees either. Your key is stored as a Docker secret on the server (mode-600 root-only file), mounted read-only into your isolated container. It's not visible in docker inspect, environment variables, process listings, or logs. See the security model for the full breakdown.

Provisioning takes about 30 seconds. You'll be auto-redirected to your hub at <your-slug>.notiken.com.

Your bot ships paused. The STATUS toggle in the dashboard header reads PAUSED. No trades will fire until you flip it to ACTIVE. This is intentional — you should add targets, fund USDC, and review the risk caps before going live.

Step 4 — First-Time Dashboard Tour

Your bot dashboard lives at <your-slug>.notiken.com/copy-bot/. It's a single-page app with a sidenav on desktop (collapses to a bottom-tab nav on phones). Seven pages, each focused on one job — here's the lay of the land.

Sidenav

Always visible. Shows your bot name, wallet address, and a live status pill (Active, Paused, or Blocked with the reason inline). The Pause / Resume button at the bottom is a single click — pause only blocks new entries, open positions keep resolving. Help & glossary and Subscription sit below the nav.

Overview (default landing page)

The at-a-glance health check. Hero shows portfolio value, today's change, and your status pill. To its right: available cash, current exposure, and target count.

"Today" is computed from local midnight in your browser's timezone, not UTC — so the headline matches what you'd intuit for "today" wherever you are. Discord alerts and backend stats still use UTC for consistency.

Trades

The full paginated trade ledger. Filter chips for status (All / Filled / Resolved / Cancelled), side (BUY / SELL), date range (1D / 7D / 30D / All), and target. When you filter to Resolved, the table surfaces a daily-recap summary line — won, lost, net, and swept totals. Load More pulls older history on demand. Need the whole history for tax prep or analysis? The ↓ CSV button at the right of the filter bar downloads every trade as trades-YYYY-MM-DD.csv for import into Sheets/Excel. Clicking a point on the Overview chart drops you here pre-filtered to a ±1h window so you can see what was trading at that moment.

Targets

One card per wallet the bot mirrors. Each shows realized P&L, ROI, W/L, and open position count, with an enable/disable toggle and a Remove button. Expand a card to see all eleven per-target settings (scale, copy mode, max bet, slippage, entry-price band, net thresholds, dust-capture rules). Click the lock icon next to any setting to pin it — auto-research won't overwrite locked values. Add a new target at the bottom by pasting a @handle or 0x... address.

Positions

Everything the bot currently holds on-chain. Columns: market, side (Yes / No pill), cost, entry → now with a directional ▲▼, P&L, max win, when it resolves, and which target it came from. Markets awaiting redeem show an amber Expired pill; winning and losing rows carry a subtle tint so you can scan settlement status at a glance.

Filtered

Signals the bot saw but didn't copy, and why. Aggregate counts up top, then expandable categories — stale_signal, risk_rejected, sizing_filter, position_cap, and so on. Drill into any category for per-skip detail (timestamp, target, market, side, reason). The first place to check if you're wondering "why didn't the bot copy that?"

Settings

Global config and account management:

Settings are explicit-save: type your changes, then hit Save. Nothing applies until you do.

Glossary

A 40-term in-product reference, grouped into six sections — trading concepts (CLOB, slippage, mid price, Yes/No outcomes), position lifecycle (filled, cancelled, resolved, expired, redeem, phantom cleanup, swept), targets and copying (copy modes, auto-research, locks), settings and tuning (scale multiplier, dust capture, net thresholds), and risk gates (drawdown, exposure, stale_signal, sizing_filter). Worth a skim on day one — every term that shows up elsewhere in the dashboard is defined here.

Step 5 — Add Targets and Go Live

  1. Add a target. Find a Polymarket profile you want to mirror (the leaderboard is a starting point). On the dashboard, click Add Target and paste either the @username or the 0x... wallet address.
  2. Wait for auto-research. Within ~30 seconds, the bot scrapes the target's last 500 trades, computes their style (high-frequency vs directional, mid-price vs favorites), and writes optimal per-target settings — scale, copy mode, conviction filter, entry price band. Re-runs hourly and on bankroll shifts >20%.
  3. Review the per-target settings. Click into the target row. The auto-researched values are good defaults, but check min_target_trade, copy_mode, and max_bet_pct. If you change anything, click Save changes on the card to apply it — edits don't take effect until saved. Lock anything you want to keep stable — auto-research won't overwrite locked keys.
  4. Review global Risk Caps. The auto-defaults are usually fine for a first run. Tighten them if you want a more conservative posture; use the Save settings bar to apply any changes.
  5. Fund USDC on Polymarket if you haven't already. The bot reads your live balance directly — no separate deposit flow on our end.
  6. Flip STATUS to ACTIVE. The bot starts copying within 5 seconds. Watch the first few trades fire to confirm everything looks right; pause anytime if it doesn't.

Funding considerations

Polymarket has a $1 minimum bet on the order book. For a $60 bankroll, every $1 trade is 1.7% of your capital — large enough that variance dominates. For a $200 bankroll the same trade is 0.5%, much more manageable. Below ~$200, the per-trade economics work against you regardless of how good the targets are. Start with $50–100 to validate the setup runs, but don't expect meaningful returns until you've funded $200+.

Day-to-Day Operations

Pausing

Two levels:

Performance gate (auto-pause)

The bot watches each target's rolling 7-day P&L. If a target loses more than 15% of your bankroll over that window with at least 5 resolved trades, the bot auto-pauses that target and posts a Discord alert. You can re-enable manually after reviewing. Configurable per-target.

Redeeming winners

Heads up: winning Polymarket positions don't auto-convert to USDC. After a market resolves in your favor, you hold "winning" CTF tokens worth $1 each but they sit on-chain until someone calls redeemPositions. Two options:

Manual: visit polymarket.com, log into your account, and click "Redeem" on any resolved position. Cash arrives in your USDC balance immediately. Costs ~$0.001 in Polygon gas.

Auto-redeem (opt-in): the bot has built-in auto-redeem code (Safe execTransaction → redeemPositions). It's gated behind an environment flag and off by default. Ask support to enable it for your bot — we treat it case-by-case until we've validated it across more accounts.

Adding/removing capital

Deposit USDC directly to your Polymarket wallet (the same address you've been using). The bot reads your live balance every cycle and re-runs auto-research when your bankroll shifts more than 20%. Withdrawals are the same — pull USDC out of Polymarket whenever you want.

Cancelling

Hit Manage Subscription in the dashboard footer. Cancellation is immediate via Stripe Customer Portal — bot stops, your container is preserved for 30 days in case you reactivate, then fully removed. Open positions resolve on-chain regardless of whether the bot is running.

Rotating your key

Create a new Polymarket account (new MetaMask wallet, transfer USDC over), then ping support — we'll send a new setup link so you can submit the new key. Old keys become useless once the new one is live.

Mobile access

The dashboard at /copy-bot/ is fully responsive — same UI, same controls on phone and desktop. The sidebar nav collapses to a bottom-tab nav below 900px viewport width.

FAQ

How fast does the bot react to a target's trade?
Scan cycle is 5 seconds, plus ~3-5 seconds for order placement. Total signal-to-fill is typically 8-15 seconds depending on market liquidity. For market-maker style targets where edge is thin, this delay matters; for directional bettors with longer time horizons, it's negligible.
Why do I see "Swept" rows in Recently Closed?
Swept means the bot lost track of a position before it could confirm the outcome — typically the market resolved and our reconcile loop didn't catch it in time. The cash already moved on-chain (winners get credited, losers stay as worthless tokens) so your portfolio value is accurate, but the per-trade attribution is missing. We're improving the retroactive resolution path so this fades over time.
My bot has 0 trades. Is something broken?
Check (in order): is STATUS set to ACTIVE? Is at least one target enabled? Has the target traded recently — some targets sit quiet for hours or days waiting for setups? Are your risk caps blocking entries (look for "Position cap reached" or "Risk rejected" lines if you have log access)? Most "no trades" complaints are quiet targets, not bot bugs.
Can I run the bot with very small capital ($20–50)?
Technically yes; practically no. The $1 CLOB minimum makes every trade 2-5% of a $20-50 bankroll, so variance dominates and most targets' edge gets eaten by per-trade slippage. Use this range to validate the setup runs end-to-end, then add capital before expecting meaningful results.
Can I add my own custom strategy or modify the code?
No — you get a configured bot, not the source. You can configure targets, copy modes, scale, conviction filters, entry bands, and risk caps via the dashboard. That covers most strategy decisions; what's intentionally not exposed is the underlying matching, sizing, and reconciliation logic.
What happens if Polymarket changes their API?
We track the integration and ship updates as needed — the V2 endpoint cutover in April 2026 was handled across all user bots in a single deploy. If a breaking change happens, your bot may pause itself until we patch; you'll be notified via Discord.
Can I see another user's bot or settings?
No. Each user's bot runs in an isolated container on a private network, with separate auth tokens, separate dashboards, separate keys. Your data is only readable by your password.
Where do I get help?
Discord — we usually reply within a few hours during US business hours, sometimes faster. Email [email protected] for non-urgent stuff.

Disclaimer

This software is for informational and educational purposes only. It is not financial advice. Past performance does not guarantee future results. Prediction markets carry real risk — you can lose some or all of your funds. The bot has had losing days and losing weeks. Use at your own risk and only with capital you can afford to lose.

Ready to apply?

Get your MetaMask + Polymarket account set up first, then submit the form.

Apply Now