Shadower — User Guide

How to set up and use Shadower to copy top Polymarket traders from your browser.

What is Shadower? #

Shadower is a web app that copies the trades of Polymarket traders you choose into your own Polymarket account. You add the wallets you want to follow, set your limits, and the bot places proportionally sized bets for you.

There is nothing to download or install. Open shadower.trade/app in any modern browser on Windows, Mac, Linux or a phone. The bot runs 24/7 on Shadower's servers, so you can close the browser and it keeps working.

🎯 How it works

  1. You add a trader's wallet address
  2. The cloud bot watches that wallet for new trades
  3. The trader buys or sells, Shadower mirrors it
  4. Your position follows your own limits

🔧 What you need

  • A browser, an email address or a Google account
  • For the demo: nothing else
  • For live trading: a Polymarket account with USDC, plus its wallet address and private key

Two modes

DRY-RUN Demo

The bot copies with a virtual balance (default $10,000). No real orders, no key needed. Use it to test traders and settings.

LIVE Real trading

The bot places real orders from your Polymarket account. Needs your wallet address and private key, and a trial or subscription.

Quick start #

1
Sign in Go to shadower.trade/app. Click Continue with Google, or enter your email and click Send magic link. For the email option you get a message with a 6-digit code and a link: type the code into the page, or open the link on the same device. There is no password. The account is created automatically the first time you sign in.
2
Plan Click Start 3-day free trial. No card is needed. The trial gives you 3 days and up to 100 copied trades, starting on a $10,000 virtual balance. (Monthly and Yearly plans are offered on the same screen, see Trial & subscription.)
3
Traders Paste the wallet address of a trader (0x + 40 characters), add an optional label, click + Add, then Continue. To find good wallets, open the leaderboard: every row has a Copy button that copies the address. You can also click Skip for now and add traders on the dashboard later.
4
Wallet and key The next two steps ask for your Polymarket wallet address and private key. They are only needed for live trading. If you only want to try the demo, click Skip · only watch on the key step. Details are in Connect your Polymarket account.
5
Start in demo On the dashboard click ▷ Start DRY-RUN. The bot copies with virtual money. Watch the Live feed for a day or two and check which traders and settings work for you.
6
Switch to live Click ■ Stop bot, open ⚙ Settings, enter the key and wallet address if you have not, turn on Live Mode, click Save & Apply, then click ▷ Start. Details in Demo vs Live.
💡

Onboarding always leaves the bot in demo mode. Nothing real is traded until you turn Live Mode on yourself.

Connect your Polymarket account #

Live trading needs two things from your Polymarket account: the public wallet address, and the private key. You enter them during onboarding or later in ⚙ Settings (fields Wallet Address and Polymarket Private Key). You do not need an Alchemy key or any other blockchain key: Shadower handles the infrastructure.

🔐

Use a dedicated trading account. Create a separate Polymarket account for the bot and fund it only with the money you are willing to let the bot trade. Do not use your main wallet. The key you give to Shadower can control that account's balance. See Security.

1. Wallet Address (public)

This tells the bot which account to trade from. It is safe to share.

  • Format: 0x + 40 hex characters
  • Where to find it: copy it from your Polymarket profile. If you signed up to Polymarket with email or Google, this is your Polymarket deposit address, not the address of the wallet you funded it from.
  • You also deposit USDC (on Polygon) to this address to have money to trade with.

2. Polymarket Private Key

Used to sign orders on your behalf.

  • Format: 64 hex characters, optionally prefixed with 0x
  • Where to find it: if your Polymarket account is connected to a wallet such as MetaMask, export the key from the wallet (MetaMask: account menu → Account details → Export private key). If you signed up to Polymarket with email or Google, Polymarket offers a key export in its account settings; follow Polymarket's own instructions for that.
  • Storage: encrypted on Shadower's server, see Security. After you save it, it is never sent back to your browser. Settings shows only ✓ Key saved, and the field stays empty ("Leave empty to keep current key").
⚠️

Never share your private key with anyone except the Shadower app itself, and never send it by email or chat. Shadower staff will never ask you for it.

Changing the account later

Open ⚙ Settings. The wallet address, key and Live Mode fields are locked while the bot is running. Click ■ Stop bot first, change them, then click Save & Apply.

The app validates the format: the key must be 64 hex characters and the address 0x + 40. If you swap the two fields, it tells you.

Watch-only mode

If you skip the key step, the dashboard shows a banner "Watch-only — add key & wallet to trade live" with an Add key button. You can still run the demo.

Dashboard overview #

On a wide screen the dashboard has a top bar and three columns. On a phone the same content is split into tabs at the bottom of the screen; Bot parameters, Open positions, License and Settings are under More.

Top bar

ItemWhat it does
DRY-RUN / LIVE / STALECurrent mode of the running bot. STALE means the bot is marked as running but has not reported in for several minutes.
BOT RUNNING · timeShown while the bot is running, with how long it has been up.
Display controlsText size and a high-contrast mode.
◇ Earn 20%Opens the partner program page. Partners see ◇ Partner instead.
? HelpOpens a short how-it-works pop-up with a link to this guide.
⚙ SettingsWallet address, private key, Live Mode, virtual balance.
▷ Start DRY-RUN / ▷ Start / ■ Stop botStarts or stops your bot. The label says DRY-RUN when Live Mode is off.
Door iconLog out.

Left column

ItemMeaning
PortfolioTotal value: cash plus open positions. In demo it is marked "DRY-RUN · VIRTUAL BALANCE".
CashUSDC available to trade (virtual in demo, your Polymarket balance in live).
RATIOYour global Bet ratio.
COPIEDNumber of trades copied.
MIN TRADEYour global Min trade, or "No limit".
UPTIMEHow long the bot has been running. Shows "no signal" if the bot has stopped reporting.
TRADERSThe wallets you follow, with a + ADD button. See Adding & managing traders.

In live mode the column can show two warnings: No funds to trade with when your Polymarket wallet has $0 USDC (every trade is skipped), and Low balance below $10, because every copy is at least $1 and your ratio no longer applies.

Center column

Two rows of tabs. The first row picks the view, the second filters by trader (All or one wallet).

ViewShows
Live feedEverything the bot reacts to, newest first. Each copied action is paired with the trader's original trade underneath. Columns: TIME, ACTION, SIDE, TRADER, MARKET, PRICE, AMOUNT. Load history at the bottom loads older events.
OrdersOnly executed actions: BUY, SELL, AUTO and resolved results (WIN or LOSS with the profit or loss).
LogsPlain text log lines: status messages, skips and errors.

Action types

ActionMeaning
BUYThe trader's buy was copied.
SELLYour position was sold because the trader sold (depends on Sell mode).
AUTOYour position was sold by Auto-sell.
WIN / LOSSThe market resolved. The amount is your profit or loss on that position.
SPLITThe trader split USDC into YES + NO tokens, an arbitrage pattern. Shadower does not copy it.
SKIPThe trade was ignored. The reason is shown in brackets, see Why trades are skipped.

Right column

  • Bot parameters (collapsible): all the settings with their current values. Click any row to change it. See Bot settings.
  • Open positions: each card shows the market, the outcome (for example YES or UP), your cost, entry price ➔ current price, and the current profit or loss.
  • License: your plan badge, for example "Trial · 2d 18h · 3/100" or "Active · until 28 Apr 2026". Click it to subscribe, upgrade or pay ahead.

Bottom bar

Shows the connection state ("Connected · API" or "Disconnected"), the time of the last poll, the number of errors, and the app version.

Adding & managing traders #

You can follow up to 20 wallets at once.

Finding traders

The Shadower leaderboard lists top traders and is refreshed every night. Click Copy on a row to copy the wallet address. You can also take an address from any trader's Polymarket profile.

Before you copy someone, look at more than the win rate. The trader stats window in the app (see below) flags a trader with a high win rate but negative P&L, which usually means many small wins and a few big losses.

Adding a trader

1
Click "+ ADD" above the trader list.
2
Paste the wallet address (0x + 40 hex characters). The app confirms "✓ Valid address", and rejects duplicates.
3
Enter a label (optional). If you leave it, the trader is named "Trader 1", "Trader 2" and so on.
4
Click OK. The app checks the wallet first. If it trades at a very high frequency it shows "Possible Bot Detected" with the number of trades in 3 days. Copying such wallets usually drains a balance. You can cancel or choose Add Anyway.

If the bot is already running, a new trader is picked up without a restart.

Managing a trader

  • Click a trader in the list to open Trader Stats. Switch between 24h, 7d and All to see realized P&L and ROI, win rate, wins and losses, number of copies, closed trades, amount invested and the trader's average original bet. The same window has ⏸ Pause / ▶ Enable and ✕ Remove.
  • Click ⋯ next to a trader for the menu: Disable / Enable (stop copying without deleting), Rename (the rename window also has a Copy button for the address), Remove.
  • A green dot means the trader is enabled. A disabled trader is dimmed.

Settings overview #

Trading rules live in the Bot parameters panel on the right. Click a row to open its dialog. Account and mode settings live in ⚙ Settings (see Connect your Polymarket account).

Row in the panelWhat it controlsPer trader?
Bet ratioHow big your bet is relative to the trader'sYes
Min tradeIgnore trader bets smaller than thisYes
Max betCap on one copied betYes
Order typeMarket order (FAK) or limit order (GTC)Global
Price rangeOnly copy trades inside this price windowYes
Hourly limitMaximum spend per hourGlobal
Sell modeWhat to do when the trader sellsGlobal
Auto-sellSell automatically when the price reaches a targetGlobal

Per-trader settings

At the top of the panel there is a Scope picker. With All traders selected you edit the global values. Pick one trader and the four per-trader rows (Bet ratio, Min trade, Max bet, Price range) apply to that trader only. A dot next to a value means the trader has a custom value. Each dialog has a Use global button to remove the custom value. In the All traders view a badge such as "2 custom" shows how many traders override that row. Rows that cannot be set per trader are greyed out while a single trader is selected.

ℹ️

Defaults applied at the end of onboarding: Bet ratio 1%, Min trade $100, Price range 1 to 99¢, Hourly limit 100% of your balance, Sell mode "Sell all". New settings are always saved on Shadower's servers, so they follow you to any device.

Bet ratio #

The ratio sets the size of your bet as a percentage of the trader's original bet.

Your bet = Trader's bet × Ratio

Example: Trader bets $200 · Ratio = 1% → Your bet = $2
Range0.1% to 100%
Default1%
Per traderYes
⚠️

$1 minimum. Polymarket does not accept orders below about $1, so every copy is at least $1. When the trader's bet is small, the ratio does not apply and you bet $1 instead. The Bet ratio dialog shows the threshold: at 1%, any trader bet below about $100 becomes a $1 bet. If you do not want this, raise Min trade so small trades are skipped.

💡

Start low, for example 1 to 2%, and watch the demo before going live.

Min trade #

Trades where the trader bet less than this amount are skipped. It is shown as Min trade in the panel (on phones: Min bet), and the dialog is titled "Min Trade Size". Useful to ignore small experimental bets.

If trader's bet < Min trade → SKIP

Example: Min trade = $100, trader bets $45 → SKIP ($45.00 < $100)
Range$1 to $100,000, or empty for no limit
Default$100
Per traderYes

Max bet #

The most USDC the bot will spend on one copied trade. If ratio × trader's bet is higher, your bet is cut to this value. Leave it empty for no limit.

Max bet = $50 → never spend more than $50 per copy
Range$0 (or empty) for no limit, up to $100,000
DefaultNo limit
Per traderYes

Price range #

The bot only copies a buy if the trader's price is inside this window (in cents, where 100¢ = $1 = certain outcome). Trades outside the window are skipped. A high max price avoids paying a lot for a small remaining gain on nearly decided markets; a min price avoids long shots.

Range1¢ to 99¢ for both Min price and Max price
Default1¢ – 99¢
Per traderYes

If you enter min greater than max, the app swaps them.

Order type #

How the bot places your buy order. Applies to all traders.

TypeWhat happens
Market Order (FAK) + slippage Buys immediately at the market price. Slippage is the most you accept paying above the trader's entry price: 10¢ means up to 10¢ more. Higher slippage fills more trades; lower slippage gives a better price but more misses. Range 1¢ to 30¢, default 10¢.
Limit Order (GTC) − discount Places a limit order below the trader's price and waits. Discount is how far below, in dollars (0.05 = 5¢ cheaper), range 0 to 0.30. It may never fill if the market moves away. Live mode only.

In demo mode only the market order is available (the limit order option is locked). The slippage value applies to both modes.

Hourly limit #

The maximum amount the bot can spend in any rolling 60 minutes, as a percentage of your current balance. Use it as a risk control during very active periods. It has an Enabled / Disabled switch.

Max spend per hour = Balance × Hourly limit %

Example: Balance $500 · Limit 20% → max $100 per hour

When a copy would push the spent amount over the limit, the trade is skipped with "hourly". The panel row shows the percentage and the amount used, for example 20% · $43.00/$100.00.

Range1% to 100% of balance, or Disabled
Default after onboarding100%
Per traderNo, global

Sell mode #

What your bot does when a followed trader sells a position you copied.

Option in the dialogWhat happensBest for
Sell all (Recommended) Closes your whole position when the trader exits. Most users. Follows the trader exactly.
Hold Keeps your shares whatever the trader does. People with their own exit plan.
Sell a part: N% Sells only N% of your position (for example 50% sells half). Range 1 to 100. Locking in part of the gain while keeping exposure.
Mirror trader Sells the same proportion the trader sold. Traders who exit in several steps.

The panel row shows Full, Hold, Mirror or the percentage.

Auto-sell #

Sells a position by itself when its price reaches your target, whatever the trader does. It sells only when the current mid price is at or above your threshold and the position is in profit.

Auto-sell: sell when price reaches 99¢

You bought at 72¢ → price rises to 99¢ → bot sells.
OptionsOff, or "Sell when price reaches N¢"
Range1¢ to 99¢
Default threshold99¢
Per traderNo, global

Auto-sell is independent of Sell mode. You can use Hold and still have Auto-sell take profit near the end of a market. If a position is not sold earlier, it stays until the market resolves and then shows up as WIN or LOSS. The panel row shows the threshold (for example >99¢) or Off.

Demo vs Live #

DRY-RUN (demo)LIVE
Real ordersNoYes
Real USDC spentNoYes
Balance usedVirtual balance (default $10,000)Your Polymarket cash
Shown in feed and positionsYesYes
Needs wallet address + private keyNoYes
Limit orders (GTC)Not availableAvailable
Use forTesting traders and settingsReal copy trading

The demo simulates fills against live market prices, so it is a good preview, but real fills can differ: your order may not fill at all if liquidity is thin.

How to switch to Live

1
Make sure your Polymarket account holds USDC on Polygon.
2
If the bot is running, click ■ Stop bot. Mode and account fields are locked while it runs.
3
Open ⚙ Settings, fill in Polymarket Private Key and Wallet Address if needed, switch on Live Mode ("Real orders with real money") and click Save & Apply. The switch will not turn on until both fields are filled.
4
Click ▷ Start. The top bar shows LIVE.

Virtual balance

With Live Mode off, Settings shows Virtual Balance (USDC). The default is 10,000 and the minimum 100. It can be changed only while the bot is stopped.

⚠️

In LIVE mode the bot spends real USDC. Start with a small Bet ratio (1 to 2%), a Max bet you are comfortable with, and check the Live feed closely for the first hours. Copying does not guarantee profit and you can lose all of the money in the account.

How copying works #

Your bot runs in the cloud and watches the wallets you follow. Shadower detects a new trade in about 1.8 seconds. Here is the flow for each copied trade:

1
The trader trades on Polymarket (a buy, a sell, or a market resolution).
2
Shadower detects it and shows it in your Live feed as the trader's original trade.
3
Your filters are applied: the trade must not be older than 2 hours, the trader's bet must pass Min trade, the price must be inside your Price range, and the hourly limit must have room.
4
Bet size is calculated: trader's bet × Bet ratio, at least $1, at most Max bet.
5
Demo: a simulated order against your virtual balance
Live: a real order from your Polymarket account, using your Order type setting
6
Feed and positions update. Later, a trader sell, your Auto-sell, or market resolution closes the position according to your settings.
ℹ️

You copy the trader's behaviour, not their results. Your price can differ from theirs because you enter a moment later, and your order can fail to fill in thin markets.

Why trades are skipped #

A SKIP row in the feed means the bot looked at a trade and decided not to copy it, with the reason in brackets. Skips are normal: they are your own filters doing their job, not errors. The most common ones:

You seeReasonIf you want more copies
$45.00 < $100 The trader's bet was below your Min trade. Lower Min trade.
price out of range The trader's price was outside your Price range. Widen the Price range.
hourly The hourly limit was reached. Wait for the hour to roll over, or raise the limit.
stale 2.5h ago The trade was more than 2 hours old when the bot saw it, for example after the bot was stopped for a while. Nothing to change. Old trades are not copied.
cash or low cash Not enough cash for the bet. In live mode, check your Polymarket USDC balance; in demo, the virtual balance. Add funds, or lower Bet ratio / Max bet.
slippage or price slipped The market price moved further from the trader's entry than your FAK slippage allows. Raise slippage (costs a worse price) or accept the miss.
no fill (low liquidity) Nobody was selling at an acceptable price when the order went out. Higher slippage can help, but not always.
below exchange minimum The order was too small for Polymarket. Raise Bet ratio or Min trade.
market closed The market was no longer tradable. Nothing to change.
duplicate order Polymarket rejected an identical order that already exists. Nothing to change.
price 99¢ ≥ 99¢ In demo, the simulated entry price reached the top of the allowed range. Nothing to change.
arb (SPLIT row) The trader split USDC into YES and NO tokens, an arbitrage move. Shadower does not copy it. Nothing to change.
💡

If your trial ended with no copies at all, every trade was filtered by your own rules. Loosen Min trade and Price range first.

Trial & subscription #

Free trial

  • Duration: 3 days from the moment you start it
  • Copy limit: 100 copied trades, demo and live combined
  • It ends when either limit is reached, whichever comes first. When the copies run out, the bot stops and the app shows "Free trial used up".
  • No card or payment details are needed.
  • The trial starts on a $10,000 virtual balance.
  • The trial badge in the License area looks like Trial · 2d 18h · 3/100 (time left, copies used).

Paid plans

MonthlyYearly
Price$99 / month$990 / year
Per month$99$82.50
SavingsNone2 months free
Copied tradesNo copy limitNo copy limit

How to subscribe

1
Click the License badge on the dashboard (or Subscribe in the "Free trial used up" window).
2
Choose Monthly or Yearly. You are taken to the payment page.
3
Pay in crypto through NOWPayments (BTC, ETH, USDT, USDC, TRX, TON and others). Card payments are not offered.
4
The subscription activates once the payment is confirmed.
⚠️

A blockchain payment cannot be reversed. Send the exact amount shown, on the network shown, before the quote expires. Payments sent with the wrong amount or network may be lost; see the Terms of Service.

Renewing

Plans are prepaid for a fixed period and are not charged automatically. To extend, click the License badge, which then offers Add a month or Add a year. The new period is added on top of the days you have left, so paid time is never lost.

Refunds and cancellation

You can stop using the service at any time. Stopping does not refund the unused part of a prepaid period. A refund is possible within 48 hours of the first purchase if the service did not work as described: write to support@shadower.trade. Full wording is in the Terms of Service.

License badge states

BadgeMeaning
Trial · 2d 18h · 3/100Trial active. Click to upgrade.
Active · until 28 Apr 2026Paid subscription active. Click to renew or pay ahead.
No licenseNo trial or subscription is active. Click to subscribe.

Security #

Shadower is a cloud service, so your Polymarket private key is stored on Shadower's server. It is not kept on your device. This is how it is protected, and what the limits are.

WhatHow it is protected
Private key at rest Encrypted by AWS Key Management Service (KMS, AES-256-GCM). The plaintext key is never written to the database. The master key never leaves AWS KMS, and every decryption call is access-controlled and audit-logged. Each ciphertext is bound to your user ID, so one user's encrypted key cannot be decrypted as another's.
Key in your browser After saving, the key is never sent back to your browser. The dashboard only knows whether a key exists.
What the key is used for Only to place the orders your settings call for. Shadower's system does not initiate withdrawals or transfers to other addresses.
Network The app and the API use HTTPS.
🔐

Your main protection is a dedicated wallet. Any service that holds a key to your wallet carries risk. Create a separate Polymarket account for copy trading, fund it only with the money you intend to trade, and never connect your main wallet or one that holds other assets. Read section 4 of the Terms of Service for the full description.

Stopping and removing access

You can stop the bot at any time with ■ Stop bot. You can replace the saved key in ⚙ Settings. To have the key deleted from Shadower, write to support@shadower.trade. As an extra safety step you can move funds out of the dedicated account on Polymarket, which makes any saved key useless.

FAQ #

Do I need to install anything or keep my computer on?

No. Shadower runs in the browser on Windows, Mac, Linux or a phone, and the bot runs on Shadower's servers. You can close the tab and the bot keeps copying. Open the app again any time to see what happened.

Do I need an Alchemy key or any blockchain API key?

No. Shadower handles all blockchain infrastructure.

Can I use it on several devices?

Yes. Your account and settings live on Shadower's servers. Sign in with the same Google account or email on any device.

Why are my trades showing as SKIP?

Most often: the trader's bet is below your Min trade, the price is outside your Price range, or you hit the hourly limit. The reason is printed next to every SKIP. See Why trades are skipped.

What is DRY-RUN?

The demo mode. The bot runs your real settings and follows real traders, but orders are simulated against a virtual balance. No real money is spent.

The bot says "Watch-only" or I cannot turn on Live Mode.

Live Mode needs both the private key and the wallet address. Open ⚙ Settings, fill in both, and make sure the bot is stopped before you change the mode.

The top bar shows STALE, or Uptime says "no signal".

The dashboard has not received a recent update from your bot. Reload the page. If it persists, stop and start the bot, check the status page on @ShadowerTrade, or write to support@shadower.trade.

How do I find a trader's wallet address?

Use the leaderboard and press Copy on a row. Or open any trader's profile on Polymarket and copy the address, which starts with 0x.

How many traders can I follow?

Up to 20.

The app warned me that a wallet looks like a bot. Is that a problem?

Wallets that place a very large number of trades per day are usually automated. Copying them can drain a balance quickly because of fees, slippage and the $1 minimum bet. You can still add the wallet with Add Anyway.

I cannot start the free trial.

Trials need a permanent email address (disposable email domains are rejected), and a limited number of trials can be started from one network. If you are blocked, you can subscribe directly, or write to support@shadower.trade.

What happens when a market resolves?

Winning tokens are worth $1 each, losing ones $0. The result appears in the feed as WIN or LOSS with the profit or loss on the position. If Auto-sell is on, the bot may sell earlier once the price reaches your threshold.

How do I cancel?

Plans are prepaid and are not renewed automatically, so there is nothing to cancel. Just do not renew. See Trial & subscription for refunds.

Where can I get help?

Email support@shadower.trade. Outages and releases are announced on @ShadowerTrade.

Still have questions? Write to support@shadower.trade or visit the main site.