StoriesFly logo
Tool — TikTok hashtag generator

TikTok hashtag generator: type a topic, get up to 30 tags to pick five from.

StoriesFly's TikTok hashtag generator sends your topic, 2 to 100 characters, to the gpt-oss-20b language model in one request and returns up to 30 lowercase hashtags, each rewritten by our server to the characters a-z, 0-9 and _, free for five runs a day and 50 on the Basic plan. The model has no trend feed and its knowledge ends in June 2024. Since August 2025 TikTok's upload screen has been reported to accept five hashtags per post, so the list is a shortlist to choose from, not a block to paste.

Tone

Changes the strategy tip only. Tags keep to a-z, 0-9 and _ in every language.

5 runs a day free, 50 on Basic, no daily count on Pro · resets 00:00 UTC

What one run takesa topic, 2–100 charactersviral, niche or mixedBack from one runup to 30 hashtagsa short tip

TikTok: 5 hashtags a post, reported5 runs a day free, 50 on Basicno sign-in needed

Fig. 01The server-side gate every generated tag passes
Tags the model wrote30 asked for
Shown to youlowercase, one #, a-z 0-9 _
Removedempty, over 64 characters or a repeat
  • Trim, lowercase, add a # where missingrewrites
  • Delete every character outside a-z, 0-9 and _strips characters
  • Drop tags under 2 or over 64 charactersdrops tags
  • Drop repeatsdrops tags
  • Refill from 10 fixed tags, #fyp firstadds tags
  • Stop at 30cuts the tail
what reaches the resultwhat the gate removes

Where 30 can shrinkThe gate removes tags and can refill from only ten fixed ones. If the model returns fewer than 20 usable tags, the list comes back shorter than 30, and the count above the chips is the real number.

01Five on the post

Thirty candidates, five slots

The generator asks the model for exactly 30 tags. A TikTok post reportedly will not carry that many: since August 2025 creators have reported a warning on the upload screen that reads Maximum 5 hashtags. TikTok has not announced the limit officially, so the upload screen on your own account is the final word.

Read the 30 as a shortlist. Fig. 02 is one real response for the topic sourdough bread baking at home. Most of its tags fit such a video, and the five marked are ones a baker might keep. Six others, #instagood, #instafood, #love, #fun, #happy and #cute, are generic, and two of them are named after Instagram. No step in the code checks a tag against your topic; choosing is left to you.

Broad tags such as #fyp and #viral appear for two plain reasons: the preset asks for them, and the server refills short lists from a fixed set that starts with #fyp. Neither reason is a measurement of what they do for a video.

Reports of the five-tag limit: Social Media Today, 17 August 2025 and MediaPost, 21 August 2025. The model's June 2024 knowledge cutoff is listed on OpenAI's gpt-oss-20b page.

Fig. 02One real run, printed as it came back
#fyp#viral#foryou#trending#instagood#love#fun#happy#cute#sourdough#breadmaking#bakingathome#homemadebread#starter#fermentation#knead#dough#artisanbread#ovenlove#loaf#rusticbread#breadlover#bakedgood#freshbread#foodie#recipe#howto#diy#cooking#instafood

Topic: sourdough bread baking at home, preset mixed. Another run on the same topic can return a different list.

five that describe a sourdough videogeneric or Instagram-named tags
02Server-side rewrite

What happens between the model and your screen

The model's list is never shown as written. The server rewrites every tag first, in the order below.

  1. 01One request to the modelYour topic, the preset and the tip language go into one prompt that asks for 30 tags and a tip of one or two sentences. No trend data goes with it.
  2. 02Lowercase and a leading #Each tag is trimmed, lowercased and given a # if it has none.
  3. 03Only a-z, 0-9 and _ surviveSpaces, hyphens, accents, emoji and non-Latin letters are deleted. #pão becomes #po, and a tag written in Cyrillic or Devanagari is reduced to a bare # and removed.
  4. 04Length check, then repeatsTags shorter than 2 or longer than 64 characters, counting the #, are removed, and so are duplicates.
  5. 05Refill from a fixed tenIf fewer than 30 remain, the server appends #fyp, #foryou, #foryoupage and seven more from a fixed list, skipping any already present.
  6. 06Cut at 30Anything past the 30th tag is dropped. The number above the chips is the length of the list you actually got.
Fig. 03Five raw tags through the rewrite
Model wroteYou see
#Home-Baking#homebaking
sourdough starter#sourdoughstarter
#pão#po
#хлебremoved
#रोटीremoved

The right-hand column is computed by a copy of the server's rewrite rules each time this page renders.

03From the source

The numbers the server applies to every run

These are the values in the generator's code, not targets.

Hashtags per run, at most
30
Characters a tag may keep
a-z0-9_
Tag length with the #, characters
2–64
Refill tags, in order
#fyp#foryou#foryoupage#viral#tiktok#trending#explore#fypage#fy#viralvideo
Topic length, characters
2–100
Presets
viralnichemixed
Tip languages
enesptruhi
Model
openai/gpt-oss-20b
Runs a day without an account, per IP address
5
Runs a day on Basic, shared with the caption generator
50
04The three presets

Viral, niche, mixed: what each one asks for

A preset is one sentence in the prompt. Nothing afterwards measures whether the list follows its split.

01Viralasks for half broad For You tags, 30% trending, 20% niche
02Nicheasks for 60% niche, 30% topic, 10% broad For You tags
03Mixed, the defaultasks for 30% broad For You tags, 50% niche, 20% trending
05Copy all or pick

Two ways to use the list

Each chip copies one tag and replaces whatever was copied before, so five tags take five rounds of tap and paste. Copy all puts the whole list on the clipboard at once.

Copy all into the caption
Whole list pastedReported warning past fiveDelete the extras by hand
Pick five that describe the video
Read the listTap a chip, paste itRepeat for five tags

Skip the generic and off-topic tags first, then keep the five closest to what the video shows.

06What it leaves out

What the hashtag list does not know

Read these before a list goes on a post.

  • 01No trend dataThe model gets no feed of current TikTok tags and its knowledge ends in June 2024. A #trending in the list is a word it chose, not a reading of this week's charts.
  • 02Latin letters onlyTags keep a-z, 0-9 and _. The language menu changes only the tip; a topic in Russian or Hindi still gets Latin-letter tags, and accented words lose letters.
  • 03No relevance checkNothing compares the tags with your topic. Generic tags and Instagram habits such as #instagood can appear, as they did in the run shown above.
  • 04Not a brand-safety reviewThe prompt asks the model to avoid sex, drug and violence terms. No moderation step runs after it, so read the list before it goes on sponsored work.
  • 05A daily count on every plan but ProWithout an account you get five runs per IP address per UTC day, shared by everyone behind that address and kept apart from the caption generator's. Signed in, the count moves to your account and the two generators share it: five a day on Free, 50 on Basic, and Pro runs are not counted. A run that fails on the model's side still counts, and on a day the server's AI spending cap is reached, Free and signed-out runs pause until 00:00 UTC while Basic and Pro continue.
  • 06It knows your words, nothing elseIt does not see the video, the account or how earlier tags performed.
07Hashtag limits and quotas

TikTok hashtags, asked plainly

How many hashtags can you use on a TikTok post?

Five, according to creator reports since August 2025: the upload screen shows the warning Maximum 5 hashtags when more are added. TikTok has not announced it officially, so check the upload screen on your own account.

Why does the generator return 30 if a post takes five?

Because the prompt asks the model for 30 tags. Some come back generic or off-topic, so the list is a pool to choose five from, not a set to paste whole.

Are these hashtags trending right now?

No. The model has no live data and its knowledge stops in June 2024. Tags such as #trending or #viral come from the preset's wording and the fixed refill list, not from TikTok's current numbers.

Can it make hashtags in Spanish, Russian or Hindi?

Only in Latin letters. The server deletes every character outside a-z, 0-9 and _, so Cyrillic and Devanagari tags disappear and accented words lose letters. Spanish or Portuguese words without accents come through intact.

Why did I get fewer than 30 tags?

Because the rewrite removed some and the refill list ran out. Repeats, tags that end up shorter than 2 characters and tags over 64 characters are removed, and only ten fixed tags are available to fill the gap.

Is it free?

Yes, for five runs a day, reset at 00:00 UTC. Without an account they are counted per IP address, apart from the caption generator's five. Signed in, the count belongs to your account and both generators share it: five a day on Free, 50 on Basic, and Pro runs are not counted.

Do you store my topic?

No, not when the run succeeds. The topic is sent to Groq, which runs the model, and is not saved by StoriesFly; if the model call fails, the error log records the topic with the error.

Type the topic, keep the five tags that fit.

Five free runs a day, 50 on the Basic plan.

Enter a topic