StoriesFly logo
Tool — Shadowban checker

Instagram shadowban checker: seven public signals, one score from 0 to 100.

StoriesFly's shadowban checker scores seven public signals from a single fetch of an Instagram profile, with engagement rate and follower-to-following ratio counting double, and turns them into a score from 0 to 100 with three risk bands. No tool can read Instagram's own moderation state, so the score is a pattern match rather than a diagnosis, and the first diagram on this page says so.

Free: 1 check a day signed out, 3 with an account

What it needs@handleWhat you get backone of 3 risk bandsa score, 0–100

public profile onlyno login, no password1 free check a day

Fig. 01What a check can read, and what nobody can read
The handleone public fetch
The public profilefollowers, following, posts, bio
Instagram's moderation flagsno API exposes them
  • Engagement ratefree
  • Follower-to-following ratiofree
  • Profile completenessfree
  • Content frequencyPro
  • Activity patternPro
  • Ghost-follower riskPro
  • Privacy and account statusPro
read on every checknot readable from outside

Seven signals, not a flagThe verdict is a weighted reading of seven public numbers, not a look at a ban flag. If such a flag exists it sits on the branch nobody outside Instagram can reach. Engagement rate and follower ratio count twice in the average, and every weight is printed next to its signal further down.

01The seven signals

Each signal and what it weighs

Every signal is scored from 0 to 10 out of the same single fetch: followers, following, post count, the privacy flag, and whether the profile has a bio, a name and a picture. Nothing is sampled from the feed and no password is involved.

Three signals come back in full on a free check: engagement rate, follower-to-following ratio and profile completeness. The other four are calculated on every run too, but their detail sits behind Pro, and the list inside the tool marks which is which.

Fig. 02Weight of each signal in the average
Engagement rate
x2
Follower-to-following ratio
x2
Profile completeness
x1
Content frequency
x1
Activity pattern
x1
Ghost-follower risk
x1
Privacy and account status
x1
02How a check runs

Fetch, score, weigh, band

The check reads the account the way any signed-out visitor would, and changes nothing on the profile.

  1. 01Enter the handleYours or anyone's. No login is involved, so any public account can be read.
  2. 02One fetch reads the public profileFollowers, following, posts, the privacy flag and the three profile fields. That is the entire input; there is no second request.
  3. 03Seven signals are scoredEach one lands between 0 and 10. Engagement rate and follower ratio enter the average twice, the other five enter once.
  4. 04The average becomes a bandScaled to 0 to 100: 30 and under reads low, 60 and under moderate, above that high. The bands are drawn to scale further down the page.
03Against the hashtag test

One test post, or seven numbers read the same way

Neither method reads the flag itself. The difference is repeatability: the hashtag test answers for one post at one moment, while the seven numbers are read the same way on every run, so a change in the score means the account changed.

The hashtag self-test
post a test tagsearch from another accountone post, one moment
This check
one public fetchseven weighted scoresthe same read every run

Run it again after fixing something and the score can register the change.

04The score

What the score means and what it does not

Instagram says it limits how some content is distributed, keeping it off Explore, out of hashtag pages and lower in recommendations, while denying that a single on-off shadowban switch exists. The word is folklore; the restrictions are real. A checker can only work with what is visible from outside, and what is visible is public numbers.

So the score is a pattern match, not a diagnosis. A high band says the account looks like accounts that get restricted: mass-follow ratios, an audience with too little content to justify it, a hollow profile. It does not say that a restriction is in force right now.

Private accounts are told, not scored. Private content never enters hashtags or Explore in the first place, so the usual shadowban question does not apply, and the check says that in words instead of producing a number that would mean nothing.

Fig. 03Three bands on the 0–100 score
03060100
Low — signals look organicModerate — patterns worth fixingHigh — strong restriction patterns

Band edges come from the check's own code: 30 and 60 on the weighted 0–100 score.

05In short

How to read the verdict

A shadowban verdict from outside is an inference, and this page prints the numbers the inference stands on.

Seven public signals, weighted, from one fetch

06Blind spots

What the seven signals cannot prove

Read this before treating any band as a diagnosis.

  • 01The moderation flag itselfNo API exposes moderation state. Every signal here is a public number that correlates with restrictions, which is why the diagram at the top keeps the flag on the branch nobody outside can reach.
  • 02One snapshot, no historyA check reads the profile as it stands this minute. Yesterday's score is not stored against today's, so the trend is yours to track: run it again after changes and compare.
  • 03Reach can drop for reasons no signal seesFormat changes, posting time, a quiet week, none of it shows up in profile fields. Falling reach next to a low band usually means the cause is not profile-shaped.
  • 04High risk is not a convictionMatching the patterns that tend to precede restrictions is evidence, not proof. The band says what to fix first, not what Instagram has decided.
07Questions about shadowbans

Shadowban checks, answered plainly

Can any tool detect a shadowban for certain?

No. Instagram exposes no moderation state, so every checker infers from the outside, this one included. The difference here is that the seven numbers behind the inference are printed on the page.

Why only one free check a day?

It is the most expensive run on this site: every press means a live profile fetch plus the full seven-signal pass. A free account gets three checks a day, and Pro removes the limit.

What pushes a score up fastest?

The two double-weighted signals: an engagement rate far below what the account's size class usually gets, and a follower-to-following ratio that looks like mass-following. Following more than 7,500 accounts, near Instagram's hard limit, weighs heavily on its own.

My reach dropped but the band says low. Why?

The cause is probably not visible in profile fields, because format, timing and topic changes never are. The check can clear the profile-shaped suspects and nothing beyond them.

Which signals are free and which need Pro?

Free in full: engagement rate, follower-to-following ratio and profile completeness. Pro adds the detail on content frequency, activity pattern, ghost-follower risk and account status. All seven are calculated on every run either way.

Does running the check change anything on the account?

No. It reads the public profile exactly as a signed-out visitor would: no login, no password, nothing written back to the account.

Can I check an account that is not mine?

Yes, any public handle works and ownership is not required. A private account gets the private-account answer instead of a score.

Is shadowban even the right word?

It is the folk word for a real set of quiet restrictions: content kept off Explore, out of hashtag pages and lower in recommendations. The page keeps the word because people search for it, and describes the mechanism because the word alone does not.

Enter a handle and see all seven signals with their weights.

One free check a day, no login.

Run the check