We monitor 175 App Store storefronts to answer one question —

Is QR Code Reader&Scan censored by Apple?

Gone.

QR Code Reader&Scan is gone from every App Store storefront we test. It was last seen available on Mar 4, 2019.

2,060 tests on record·last checked 37 days ago

Why it is unavailable

Five things can put an app out of one App Store. Each is weighed below against what can be seen from outside — open a card for the reasoning.

  • A government or a court demanded itLikely

    and Apple complied. Apple publishes a count of these per country each year and never says which apps they were. Apple's 2025 App Store Transparency Report

  • Apple applied a rule, unaskedLikely

    either its own review guidelines, or its own reading of a local law, with nobody having demanded anything. This is the largest category in Apple's own removal figures by a wide margin, and it covers distribution permits as well as content — Apple kept a free Bible app out of mainland China in 2021 for want of one. Apple's 2025 App Store Transparency Report

  • The developer withheld itUnlikely

    freely, or under legal advice of their own, or because Apple's guidelines require that kind of app to be limited to certain countries. Switching a country off is easy for a developer to do in Apple's own tools: it needs no new version of the app, and it leaves no public trace other than the app being unavailable.

  • Something brokeUnlikely

    a rejected update, a lapsed certificate, a payment or licensing problem, a mistake nobody has got round to noticing.

  • A local rule about paying for itRuled out

    gambling licences, financial rules, tax — the kind of law that governs a transaction. Apple can obey every one of them by refusing the payment, which is why this is the only restriction we would accept and the only one that cannot touch a free app.

    • It is free, so Apple sells nothing here.
How this is weighed, and what it cannot tell you

Weighed from the evidence under each card, not from a model. There is no published figure for how Apple's removals divide up, so these are ordered words rather than percentages. For scale on the same-day counts: across the whole record an app leaves a storefront with fewer than two others, so a dozen at once is not a dozen coincidences.

None of this is certain, and a citation does not make it so: Apple naming a Chinese agency tells you what Apple said, not everything that happened. What can be said is that the readings alone cannot separate these five — a developer switching off a country and a government ordering it removed arrive at Apple's catalogue looking identical — and that nobody has ever measured how they divide across the App Store. The one careful study of the question was done on Google's store, using an error message Apple does not emit.

Apple publishes no record of which apps are unavailable in which of its App Stores. For the removals it makes on a government's demand it publishes the agency and the law behind every one — 2,045 of the 166,899 apps it removed during 2025 — and never which app. Where a reason reaches the public at all, it is usually because a developer chose to say so. Apple's App Store Transparency Report

Know of a statement, notice or order we have missed? Tell us →

QR Code Reader&Scan

Developer: xin zhao · Category: Utilities · Released: Apr 27, 2018 · Rating: 4.5★

View in App Store ↗
0stores where available
168stores where blocked
6.98Bpeople behind the block
168of 175 stores tested
2,060tests on record

Other Utilities apps missing from India

Everything missing from India →

Life of this app

  1. Apr 27, 2018Released on the App Store
  2. Mar 4, 2019First tested by AppleCensorship
  3. Mar 4, 2019Last seen available anywhere
  4. Oct 10, 2020Gone from 168 storefronts
  5. Aug 12, 2026Most recent test

Testing history

One column per month, every month from the first reading to the last. Height follows how many readings we took that month; red is the share of them that found the app unavailable. An empty month is one nobody tested.

2019-032026-08

Found availableFound unavailable

Availability by storefront

Every storefront we test, current status first. Data is a measurement, not a promise: each row carries its own date.

Test now
AfghanistanAFUnavailableMar 23, 20233 years ago
AlbaniaALUnavailableFeb 3, 20203 years ago
AlgeriaDZUnavailableMay 19, 20233 years ago
AngolaAOUnavailableAug 5, 20194 years ago
AnguillaAIUnavailableMay 19, 20208 months ago
Antigua & BarbudaAGUnavailableAug 14, 202237 days ago
ArgentinaARUnavailableOct 7, 20193 years ago
ArmeniaAMUnavailableOct 31, 20202 years ago
AustraliaAUUnavailableAug 1, 20193 years ago
AustriaATUnavailableAug 1, 20198 months ago
AzerbaijanAZUnavailableAug 1, 20194 years ago
BahamasBSUnavailableJan 31, 20205 months ago
BahrainBHUnavailableMay 31, 20202 years ago
BarbadosBBUnavailableApr 6, 20233 years ago
BelarusBYUnavailableAug 12, 20196 months ago
BelgiumBEUnavailableMar 11, 20203 years ago
BelizeBZUnavailableDec 13, 20224 years ago
BeninBJUnavailableMay 18, 20202 years ago
BermudaBMUnavailableOct 27, 20194 years ago
BhutanBTUnavailableJan 11, 20204 years ago
BoliviaBOUnavailableJan 12, 20203 years ago
BotswanaBWUnavailableAug 12, 20193 years ago
BrazilBRUnavailableMar 18, 20202 years ago
British Virgin IslandsVGUnavailableJun 15, 20204 years ago
BruneiBNUnavailableJan 27, 20223 years ago
BulgariaBGUnavailableDec 16, 20202 years ago
Burkina FasoBFUnavailableSep 29, 20224 years ago
CambodiaKHUnavailableDec 9, 20194 years ago
CameroonCMUnavailableNov 3, 20224 years ago
CanadaCAUnavailableJan 30, 20202 years ago
Cape VerdeCVUnavailableMay 5, 20212 years ago
Cayman IslandsKYUnavailableOct 27, 20193 years ago
ChadTDUnavailableOct 7, 20194 years ago
ChileCLUnavailableAug 1, 20194 years ago
China (Mainland)CNUnavailableJul 31, 20198 months ago
ColombiaCOUnavailableFeb 2, 20203 years ago
Costa RicaCRUnavailableAug 18, 20193 years ago
Côte d’IvoireCIUnavailableNov 3, 202214 months ago
CroatiaHRUnavailableAug 1, 201910 months ago
CyprusCYUnavailableAug 10, 20203 years ago
CzechiaCZUnavailableAug 5, 20192 years ago
DenmarkDKUnavailableJul 31, 20192 years ago
DominicaDMUnavailableOct 7, 20197 months ago
Dominican RepublicDOUnavailableOct 9, 20193 years ago
DR CongoCDUnavailableAug 17, 20222 years ago
EcuadorECUnavailableOct 27, 20194 years ago
EgyptEGUnavailableFeb 19, 20228 months ago
El SalvadorSVUnavailableMar 10, 20212 years ago
EstoniaEEUnavailableMay 24, 20214 years ago
EswatiniSZUnavailableAug 21, 20206 months ago
FijiFJUnavailableMay 19, 20212 years ago
FinlandFIUnavailableOct 27, 20192 years ago
FranceFRUnavailableJan 31, 20204 years ago
GabonGAUnavailableJun 27, 20224 years ago
GambiaGMUnavailableMar 23, 20212 years ago
GeorgiaGEUnavailableNov 21, 20224 years ago
GermanyDEUnavailableJan 12, 20202 years ago
GhanaGHUnavailableMay 18, 20212 years ago
GreeceGRUnavailableApr 1, 20224 years ago
GrenadaGDUnavailableJun 12, 20214 years ago
GuatemalaGTUnavailableMar 23, 202115 months ago
Guinea-BissauGWUnavailableNov 8, 20204 years ago
GuyanaGYUnavailableSep 18, 20216 months ago
HondurasHNUnavailableNov 28, 20194 years ago
Hong KongHKUnavailableAug 1, 20193 months ago
HungaryHUUnavailableMay 24, 20213 years ago
IcelandISUnavailableOct 27, 20198 months ago
IndiaINUnavailableAug 1, 20194 years ago
IndonesiaIDUnavailableAug 1, 20191 year ago
IrelandIEUnavailableMar 29, 20202 years ago
IsraelILUnavailableAug 1, 20193 years ago
ItalyITUnavailableJul 31, 20192 years ago
JamaicaJMUnavailableMay 23, 20214 years ago
JapanJPUnavailableAug 1, 20195 months ago
JordanJOUnavailableSep 22, 20214 years ago
KazakhstanKZUnavailableMay 18, 20213 years ago
KenyaKEUnavailableAug 1, 20192 years ago
KuwaitKWUnavailableDec 2, 20203 years ago
KyrgyzstanKGUnavailableMar 10, 20204 years ago
LaosLAUnavailableMar 22, 20214 years ago
LatviaLVUnavailableAug 24, 20212 years ago
LiberiaLRUnavailableFeb 26, 20212 years ago
LibyaLYUnavailableSep 7, 20233 years ago
LithuaniaLTUnavailableNov 28, 20193 years ago
LuxembourgLUUnavailableSep 17, 20213 months ago
MacaoMOUnavailableAug 5, 20194 years ago
MadagascarMGUnavailableMay 14, 20213 years ago
MalawiMWUnavailableJul 31, 20194 years ago
MalaysiaMYUnavailableMay 14, 20212 years ago
MaldivesMVUnavailableNov 17, 20223 years ago
MaliMLUnavailableApr 7, 20214 years ago
MaltaMTUnavailableApr 23, 20223 years ago
MauritaniaMRUnavailableMay 24, 20218 months ago
MauritiusMUUnavailableMar 8, 20212 years ago
MexicoMXUnavailableAug 1, 20192 years ago
MicronesiaFMUnavailableJun 18, 20204 years ago
MoldovaMDUnavailableMay 19, 20213 years ago
MongoliaMNUnavailableJul 1, 20222 years ago
MontenegroMEUnavailableJan 12, 20248 months ago
MontserratMSUnavailableAug 31, 20223 years ago
MoroccoMAUnavailableJun 30, 20222 years ago
MozambiqueMZUnavailableMay 18, 20212 years ago
Myanmar (Burma)MMUnavailableNov 25, 20222 years ago
NamibiaNAUnavailableAug 7, 20204 years ago
NauruNRUnavailableJun 19, 202437 days ago
NepalNPUnavailableAug 16, 20212 years ago
NetherlandsNLUnavailableAug 1, 20194 years ago
New ZealandNZUnavailableMay 19, 20202 years ago
NicaraguaNIUnavailableApr 23, 20212 years ago
NigerNEUnavailableMay 23, 20212 years ago
NigeriaNGUnavailableOct 27, 20213 years ago
North MacedoniaMKUnavailableJun 17, 20214 years ago
NorwayNOUnavailableAug 1, 20193 years ago
OmanOMUnavailableMar 10, 20212 years ago
PakistanPKUnavailableAug 1, 20193 years ago
PalauPWUnavailableSep 7, 20203 months ago
PanamaPAUnavailableApr 29, 20214 years ago
Papua New GuineaPGUnavailableFeb 26, 20213 years ago
ParaguayPYUnavailableApr 29, 20216 months ago
PeruPEUnavailableMar 1, 20222 years ago
PolandPLUnavailableMay 6, 20212 years ago
PortugalPTUnavailableAug 17, 20192 years ago
QatarQAUnavailableOct 12, 20192 years ago
Republic of the CongoCGUnavailableFeb 22, 20212 years ago
RomaniaROUnavailableAug 1, 20194 years ago
RussiaRUUnavailableOct 27, 20192 years ago
RwandaRWUnavailableJul 4, 20224 years ago
São Tomé & PríncipeSTUnavailableMar 10, 202115 months ago
Saudi ArabiaSAUnavailableOct 28, 20193 years ago
SenegalSNUnavailableAug 12, 20194 years ago
SerbiaRSUnavailableJul 18, 20242 years ago
SeychellesSCUnavailableMar 9, 20204 years ago
Sierra LeoneSLUnavailableMar 13, 20222 years ago
SingaporeSGUnavailableOct 9, 20193 years ago
SlovakiaSKUnavailableMay 19, 20202 years ago
SloveniaSIUnavailableOct 12, 20194 years ago
Solomon IslandsSBUnavailableMar 10, 20214 years ago
South AfricaZAUnavailableOct 28, 20193 years ago
South KoreaKRUnavailableJul 31, 201910 months ago
SpainESUnavailableOct 27, 20192 years ago
Sri LankaLKUnavailableSep 18, 20215 months ago
St. LuciaLCUnavailableApr 18, 20212 years ago
St. Vincent & GrenadinesVCUnavailableMar 19, 20218 months ago
SurinameSRUnavailableMar 21, 20212 years ago
SwedenSEUnavailableOct 7, 20193 years ago
SwitzerlandCHUnavailableAug 1, 20193 years ago
TaiwanTWUnavailableAug 1, 20195 months ago
TajikistanTJUnavailableMar 6, 202110 months ago
TanzaniaTZUnavailableSep 23, 20213 years ago
ThailandTHUnavailableNov 29, 20193 years ago
TongaTOUnavailableJul 8, 20224 years ago
Trinidad & TobagoTTUnavailableMar 14, 20213 years ago
TunisiaTNUnavailableOct 19, 20202 years ago
TürkiyeTRUnavailableAug 1, 20192 years ago
TurkmenistanTMUnavailableOct 28, 20194 years ago
Turks & Caicos IslandsTCUnavailableFeb 26, 20212 years ago
UgandaUGUnavailableNov 9, 20202 years ago
UkraineUAUnavailableJul 31, 20192 years ago
United Arab EmiratesAEUnavailableMar 18, 202037 days ago
United KingdomGBUnavailableOct 23, 20201 year ago
United StatesUSUnavailableJul 31, 201937 days ago
UruguayUYUnavailableDec 9, 20193 years ago
UzbekistanUZUnavailableFeb 20, 20223 years ago
VanuatuVUUnavailableNov 5, 20233 years ago
VenezuelaVEUnavailableAug 12, 20194 years ago
VietnamVNUnavailableAug 1, 20193 years ago
YemenYEUnavailableOct 19, 20203 years ago
ZimbabweZWUnavailableOct 10, 20202 years ago
Bosnia & HerzegovinaBANot tested0
IraqIQNot tested0
KosovoXKNot tested0
LebanonLBNot tested0
PhilippinesPHNot tested0
St. Kitts & NevisKNNot tested0
ZambiaZMNot tested0

Testing asks Apple whether it will sell this app in that storefront, right now, by the same method the crawler has used since 2019. Your browser asks Apple directly, so the answer describes what Apple serves your connection — and if your browser cannot reach Apple at all, we ask on your behalf and say so. The result is a link: open it to see Apple's own answer and check ours. Readings are added to the record above; roughly a quarter of the readings taken each day come from people testing.

How we test

Availability is checked against Apple's own catalog servers for every storefront, the same way the App Store app asks. "Unavailable" means Apple's servers say the app cannot be offered in that country — it does not say who asked for the removal. Removals initiated by the developer and removals demanded by governments look the same from outside; the history and context on this page are how we tell them apart.