What warm-up is
Warm-up is a mode where the account doesn't publish anything — it just spends time in TikTok like a regular user:
- scrolls the For You feed
- watches videos for a randomized duration
- occasionally likes, follows, or saves to favorites
- searches for videos by keywords
- watches results from search
It does not upload or publish anything. Warm-up exists to build up "life" on the account before its first publication and to teach TikTok's algorithm your niche.
When to use it
| Scenario | Warm-up needed? |
|---|---|
| Freshly logged-in account before its first post | Yes, 1–2 cycles |
| Account after a long pause (a week+) | Yes, 1 cycle |
| Account that's been actively publishing recently | Optional |
| You want to teach the feed your interests | Yes — keyword warm-up |
Warm-up can run as a standalone thread before the main Upload thread, or be plugged into a Seeding cycle (after login) via
seeding_warm_*settings.
Two warm-up types
The template has a Feed / Search toggle. One thread run uses one of the two (the choice is locked in the template).
Feed — the For You feed
The thread opens TikTok and scrolls the feed:
- Watches the current video for a random duration
- With probability X% likes the video
- With probability Y% follows the author
- With probability Z% saves to favorites
- Swipes up to the next video
- Repeats N times
Search — keyword-driven
The thread opens TikTok and runs a search:
- Opens the search screen
- Types one random keyword from the list (one is picked per run)
- Switches to the "Videos" tab
- Opens the first video in the results
- Watches videos in fullscreen mode for a random duration
- With probability X / Y / Z% likes / follows / saves to favorites
- Swipes to the next video N times
Search is more valuable when you want to nudge the feed toward a niche: cooking, fitness, a specific brand, etc. — TikTok's algorithm picks up the interests.
Template setup
In the UI: Templates → create template → Run Mode = Warmup.
"Warmup Settings" card
Feed / Search toggle
You pick one type. Parameters of the other type are saved in the template but not used.
Feed parameters
| Parameter | What it controls | Default | Limits |
|---|---|---|---|
| Videos in feed (min / max) | How many videos to scroll (random within range) | 5 – 15 | 0 – 100 |
| Time per video (min / max, sec) | Seconds per video | 2 – 10 | 3 – 20 |
Search parameters
| Parameter | What it controls | Default | Limits |
|---|---|---|---|
| Keywords | List of keywords (one per line) | empty | — |
| Videos in results (min / max) | How many videos to watch in results | 3 – 8 | 0 – 100 |
| Time per video (min / max, sec) | Seconds per video | 5 – 16 | 3 – 20 |
Keyword format: one keyword per line. One random keyword is picked per thread run — so write similar / niche keywords.
Example:
easy pasta recipe 5 minute meal homemade ramen chef secrets
"Feed Rates" / "Search Rates" cards
Interaction probabilities are independent "coin flips" on each video:
| Parameter | What it controls | Default |
|---|---|---|
| Like | Chance of liking each video (0 – 100%) | 10% |
| Follow | Chance of following the author (0 – 100%) | 0% |
| Favorite | Chance of saving to favorites (0 – 100%) | 0% |
Heads up: these are independent chances per video, not "one like per session." If you set Like = 50% and scroll 10 videos, statistically you'll get 5 likes. Don't push above 15–25% for Like or above 5% for Follow / Favorite — high values are too obviously different from a regular user.
"Pause Between Accounts" card
Pause between accounts when working with a multi-account list:
| Value | When to pick |
|---|---|
| 5 sec | Test run |
| 10 sec | Normal mode, 2–3 accounts per device |
| 30 sec | Large account list, cautious pace |
| 60 sec | Maximum manual-switch imitation |
"Debug" card
- Save screenshots — screenshots at each step for diagnostics. On by default (matters for support). Turn off only when you're sure warm-up runs cleanly.
Fields not used in warm-up
Some template fields are inherited from Upload and ignored in warm-up. You can leave them alone:
- Video / photo folder
- Content type
- Descriptions and everything related
- Music
- Move/Delete used
- Publications per account, after upload wait
What you need to launch a thread
Beyond the template, the Threads → Add Configuration tab takes:
| Field | What to pick |
|---|---|
| Configuration Name | Any name, e.g. "Warmup Phone 2" |
| Devices | One or more devices to run on |
| Upload Template | The template with Run Mode = Warmup |
| Account List | List of accounts (login must already be done) |
| Proxy | Optional — Stash / Happ / System / Manual |
| Cyclic Upload | Turn on for an endless cycle through the accounts |
| Pause between accounts / cycles | Your call |
| Schedule | Optional — scheduled run |
Accounts for warm-up must already be logged into TikTok on the device (or in Keychain). Warm-up does not log in on its own — for cold-start login use Seeding.
What happens during a session
1. The thread opens TikTok on the device
2. If Feed is selected:
- Loop over N videos:
- Watch X seconds
- With configured chances: like / follow / save
- Move to the next video
3. If Search is selected:
- Open the search screen
- Type one random keyword
- Switch to the "Videos" tab
- Open the first video
- Loop over N videos (like the feed, with interactions)
4. Return to the TikTok home screen
5. If multiple accounts → pause → next account
If Cyclic Upload is on, after walking through all accounts the thread sleeps for "Pause between cycles" minutes and starts over.
Common errors
| Symptom | Cause | Solution |
|---|---|---|
| Thread crashes immediately with "No keywords for warmup search" | Search mode without keywords | Fill in Keywords or switch to Feed |
| Warm-up keeps using the same keyword | By design — one is picked per run | Restart the thread / enable Cyclic to rotate per run |
| No likes at all | Like chance is 0% or it's a livestream (sidebar hidden) | Push Like to at least 5–10%; make sure the feed has regular videos |
| Videos fly by too quickly | Min time per video too small | Push the minimum to 3–5 seconds |
| Thread freezes for 30+ seconds between videos | Hit a livestream — the thread waits and swipes onward | Standard behavior, nothing to do |
| Account engagement reach drops after a series of warm-ups | Too aggressive settings (Like / Follow > 30%) | Lower the interaction chances |
Recommended presets
"Safe warm-up for a new account"
Type: Feed
Videos: 8 – 15
Time: 4 – 12 sec
Like: 8%
Follow: 1%
Favorite: 1%
Mimics a first encounter with TikTok: a user lazily scrolls and rarely likes.
"Niche feed shaping"
Type: Search
Keywords:
fitness motivation
gym tips
home workout
beginner workout
Videos in search: 5 – 10
Time: 6 – 15 sec
Like: 15%
Follow: 3%
The algorithm picks up the interests — the next feed is on-topic.
"Active user"
Type: Feed
Videos: 15 – 25
Time: 3 – 9 sec
Like: 18%
Follow: 5%
Favorite: 2%
Mimics an active user who watches a lot and likes noticeably.
"Warm-up configured correctly" checklist
- Template created with Run Mode = Warmup
- Type picked: Feed or Search
- If Search — keywords filled in (one per line)
- Video count and watch time within a realistic range (not 100 videos at 30 sec each)
- Interaction chances ≤ 25% (Like) and ≤ 5% (Follow / Favorite)
- Pause between accounts ≥ 10 sec for multiple accounts
- Accounts already logged into TikTok on the device
- Account List and Device set at thread launch
- (Optional) proxy attached if you need to mask IP
Related guides
- Folder structure — warm-up doesn't need media folders, but it's useful to see how warm-up differs from Upload and Seeding.
- Upload mode — the main publishing mode, often launched right after warm-up.