Recommended hashtag count by platform
Type a network such as Instagram and get its recommended hashtag range, 3 to 5, ready for a publishing rule or checklist. Short forms like IG, YT or Twitter for X are understood. It is a sensible default from common practice, not a promise of reach. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Platform
- Min hashtags
- 3
- Max hashtags
- 5
- Recommended range
- 3-5
The recommended hashtag count by platform tool gives social teams a practical starting range for each post. Enter a supported network and receive a canonical platform name, minimum count, maximum count, and a compact range ready for a publishing rule or editorial checklist. The result reflects broad social-media best practice rather than a promise of reach. It is especially useful when one campaign is adapted across several networks and creators need a clear default without assuming that every platform rewards the same hashtag volume.
Use the range as a disciplined starting point
A hashtag recommendation is most useful when it prevents two common extremes: adding no discovery context at all, or attaching a long block of loosely related tags to every post. Submit the platform name and use the returned minimum and maximum as a starting range for the publishing team. The tool recognizes the supported platform names as well as familiar forms such as IG, Twitter for X, and YT.
It normalizes capitalization, spacing, simple punctuation, and common web-style names before looking up the result. Audience expectations, content format, account history, campaign goals, and changes to recommendation systems can all affect performance. Treat the range as an editorial default that creates consistency.
Then use your own results to decide whether a particular account should operate near the lower or upper end.
Choose relevance before filling every available slot
The upper number is not a quota. A post with two highly specific tags can be more useful to people than one with five generic tags added only to reach the maximum. Start by identifying the topic, audience, location, event, or community that the post genuinely serves.
Select tags that describe those dimensions in language real users recognize, remove duplicates and near-duplicates, and stop when the remaining candidates become only marginally relevant. Platform behavior also matters. Concise networks generally favor a smaller visible tag footprint, while visual discovery and short-video platforms can support a somewhat broader mix.
Even there, clarity should govern the choice. Avoid unrelated trending tags, repetitive tag bundles, and claims that hashtags alone will produce reach. For a reusable workflow, store a small approved vocabulary by campaign and let editors choose from it rather than pasting the same block everywhere.
The returned range provides a guardrail for that workflow while leaving the actual selection to someone who understands the content and audience.
Measure results and maintain a platform-specific policy
Turn the recommendation into a testable publishing policy instead of treating it as a permanent law. Record the platform, content format, chosen tags, hashtag count, posting time, and outcomes that matter to the campaign, such as qualified visits, saves, watch time, replies, or conversions. Compare similar posts over a meaningful period and change one factor at a time where possible.
If posts near one end of the range repeatedly outperform comparable posts, document that observation for the account without claiming that it applies universally. Revisit the policy when the platform changes its product, when the audience shifts, or when the campaign moves into a different market. In an automated pipeline, call this capability when a platform profile is created, save the returned minimum and maximum, and validate drafts against those values.
Unknown platforms produce an explicit input error instead of a guessed recommendation, which keeps unsupported channels visible.
What you can do with it
Validate a social publishing draft
Compare the number of hashtags in a draft with a platform-specific default before it enters the approval queue.
Build a cross-platform campaign checklist
Give creators separate numeric guardrails when adapting one campaign for several social networks.
Set defaults in a scheduling product
Populate platform profiles with a deterministic minimum and maximum while rejecting unsupported networks clearly.
FAQ
Does the recommended range guarantee more reach?
No. It is a general best-practice starting point; relevance, creative quality, audience fit, and platform behavior also influence results.
Must every post use the maximum number?
No. Use only relevant hashtags; the upper bound is a guardrail, not a quota.
Which social networks does it recognize?
Instagram, TikTok, LinkedIn, Facebook, X, Pinterest, YouTube and Threads. Familiar forms such as IG, YT or Twitter for X work too, and capital letters, spacing and simple punctuation in the name do not matter.
How many hashtags should I use on Instagram?
Between 3 and 5, following broad social-media practice. Treat it as a starting point and tune it with your own results: two highly specific tags can serve people better than five generic ones added only to reach the maximum.
How do I choose which hashtags to use?
Start from the topic, audience, location, event or community the post genuinely serves. Pick tags real people recognize, remove duplicates and near-duplicates, and stop once the remaining candidates are only marginally relevant. Skip unrelated trending tags.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/seo/hashtag-count-recommend \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"platform":"Instagram"}'const res = await fetch("https://api.kit.forhosting.com/seo/hashtag-count-recommend", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"platform": "Instagram"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/seo/hashtag-count-recommend",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"platform": "Instagram"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/seo/hashtag-count-recommend", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"platform":"Instagram"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"platform":"Instagram"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/seo/hashtag-count-recommend", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"platform": "Instagram"
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "seo.hashtag_count_recommend",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
Use the range as a disciplined starting point
The response remains structured, so an automation can compare a draft's hashtag count with min_hashtags and max_hashtags rather than parsing prose. These numbers express common general practice, not a platform guarantee.
Measure results and maintain a platform-specific policy
An API request costs $0.002; the deterministic response makes the same recognized name produce the same range every time.
Technical questions
Which platforms are recognized?
Instagram, TikTok, LinkedIn, Facebook, X, Pinterest, YouTube, and Threads are supported, along with common aliases such as IG, Twitter, and YT.
What happens when the platform is unknown?
The request returns an invalid_input error rather than inventing a recommendation.
What does an API request cost?
Each API request costs $0.002.