What to do if your app gets rejected for Guidelines 4.3(a) aka 'spam'
I built an app in 2018, submitted an update, and Apple said it matched a terminated developer account. Here is what I am doing instead of panicking, rewriting the product, or throwing new binaries at App Review.
I built an app in 2018. It has been on the App Store since then. I just submitted an update, and instead of the usual review feedback, Apple sent me this:
Issue Description
We noticed the app shares a similar binary, metadata, and/or concept as apps previously submitted by a terminated Apple Developer Program account.
Submitting similar or repackaged apps is a form of spam that creates clutter and makes it difficult for users to discover new apps.
Next Steps
Since we do not accept spam apps on the App Store, we encourage you to review the app concept and submit a unique app with distinct content and functionality.
Resources
Some factors that contribute to a spam rejection may include:
- Submitting an app with the same source code or assets as other apps already submitted to the App Store
- Creating and submitting multiple similar apps using a repackaged app template
- Purchasing an app template with problematic code from a third party
- Submitting several similar apps across multiple accounts
Learn more about our requirements to prevent spam in guideline 4.3.
Extended Review
This app was found to include one or more issues that present significant safety, security, or quality concerns to users. Repeated submissions of apps with these issues will result in extended review times. Accounts that repeatedly submit apps that do not follow the App Review Guidelines and the Apple Developer Program License Agreement face removal from the Apple Developer Program.
Support
- Reply to this message in your preferred language if you need assistance. If you need additional support, use the Contact Us module.
- Consult with fellow developers and Apple engineers on the Apple Developer Forums.
- Provide feedback on this message and your review experience by completing a short survey.
I was shocked. Three or four scary items in one rejection notice.
First they think something — binary, metadata, concept — matched something previously submitted by a terminated Apple Developer Program account.
They don't accept “spam apps.”
And then the Extended Review warning.
The good news for me is I have never had anything to do with a terminated Apple Developer Program account. I hand-wrote all the original code, pre-AI. I didn't buy a template, didn't clone someone else's app, and didn't submit the same product across multiple accounts.
I literally have a tweet thread from 2018 showing me building the app. Apple has already distributed it. I get downloads every week, and a couple hundred people use it every week. I was just updating that existing app with a few bug fixes and dark mode, because it looked HORRIBLE if your system is in dark mode.
My timeline
This was not a new app going through review for the first time. It was an update. Here is the actual clock.
Friday, Sep 11, 10:18 PM
Submitted the Pushup Hero update.
Friday, Sep 11, 10:19 PM
Status changed to Waiting for Review.
Sunday, Sep 13, 5:59 PM
Status changed to In Review.
Sunday, Sep 13, 7:39 PM
App Store Connect emailed “There’s an issue with your Pushup Hero.” That was the 4.3(a) rejection.
Monday, Sep 14, 7:04 AM
I replied in the review thread.

So before I start rewriting the product, deleting dependencies, changing the name, or frantically submitting new builds, I looked at how other developers and teams actually got approved after a 4.3(a) rejection.
First: do not assume Apple is accusing you of fraud
The wording makes it sound as though Apple has established a connection between you and a banned developer. That is not necessarily the case.
Apple says the determination can be based on similarity in the app's binary, metadata, and/or concept. That leaves a huge range of possible signals: shared libraries, SDKs, assets, source-code similarities, templates, metadata, or an incorrect association with another application.
There are documented cases of legitimate developers receiving this rejection despite developing their apps independently. There are even cases where previously approved apps have received the rejection when submitting an update. So do not immediately start tearing apart your application.
The published guideline is also narrower than the rejection letter people actually get. Officially, Guideline 4.3(a) says not to create multiple Bundle IDs of the same app. In the review inbox, 4.3(a) also gets used for “this looks like spam / a clone / a match to a terminated account.” Those are related ideas, but they are not the same problem, and they do not all have the same fix.
There are different types of 4.3 guideline rejections
Apple uses 4.3 for more than one situation. Read the exact wording. A generic clone rejection and a terminated-account match are not the same problem.
| Type | Typical Apple wording | What Apple appears to be alleging |
|---|---|---|
| Generic 4.3(a) | “shares a similar binary, metadata, and/or concept as apps submitted to the App Store by other developers, with only minor differences” | Your app looks like a clone, template, repackaged app, or near-duplicate |
| Older generic 4.3 | “provides the same feature set as other apps... it simply varies in content or language” | White-label / reskinned / duplicate-content app |
| Terminated-account 4.3(a) | “shares a similar binary, metadata, and/or concept as apps previously submitted by a terminated Apple Developer Program account” | Apple has matched something about your app specifically to material from an account Apple previously terminated |
But what if your app actually is spam?
If Apple rejected you under Guideline 4.3 without the “matched a terminated developer account” language, stop and look at the app itself. Is the idea just a copy? Has this concept been done a million times? Flashlight clones, wallpaper farms, reskinned templates, and me-too apps in a saturated category are the thing 4.3 is actually for.
Obviously don't submit spammy apps. If yours is a real product with a distinct reason to exist, keep reading. The rest of this essay is for the other case: Apple thinks you are connected to a terminated account, and you are not.
How to get approved after a 4.3 spam guideline rejection
This is based on researching how other developers and teams handled 4.3(a), including cases where an existing app was suddenly flagged as matching a terminated account.
1Establish the provenance of your app
Your first goal is not to convince Apple that the app is cool. Your first goal is to prove you are the legitimate developer and that you can show where the app came from.
A 4.3(a) rejection with matching terminated dev accounts etc, is a claim about who you are, and the only useful reply is proof.
2Reply to App Review before submitting another build
Use the conversation in App Store Connect. Explain that you believe the association is incorrect. Do not get angry, accuse Apple of incompetence, or write a five-page defense.
3Ask what is actually matching
Apple says the match could be binary, metadata, and/or concept. Those are dramatically different problems. Ask which category triggered the rejection.
4Wait for Apple's response
After you have sent the facts, wait. Other developers have gotten approved at this stage after showing they built the app themselves, that it is not related to a terminated App Store account, and that they can back that up with git history, prior versions, and other provenance. Do not immediately escalate or submit another build while that reply is still in flight.
5Ask for manual escalation
If the first reply repeats the 4.3(a) boilerplate, do not immediately submit another random build. Ask for the situation to be escalated and manually investigated.
6Request a conversation with App Review
If messages are going nowhere, ask to speak with App Review. Bring a concise timeline: created app, first published, previous approvals, current update, 4.3(a) rejection.
7Appeal to the App Review Board
If App Review keeps upholding a rejection you believe is factually wrong, file a formal appeal. Build a case. Do not just write “my app isn’t spam.”
8Only start changing the binary once you have a reason
It is tempting to start deleting packages, rewriting classes, or redesigning screens just to see if the automated system stops flagging you. That should not be the first move if the rejection is incorrect.
9Do not spam App Review with repeated builds
Change something, submit, rejected, change something, submit again is especially risky when the rejection itself warns about Extended Review.
10Put the explanation in Review Notes on every later submission
If this app was ever rejected, do not assume the next reviewer has the history. Repeat the situation in Notes for Reviewer on any and all later submissions so a new reviewer is less likely to make the same mistake from lack of context.
Prove where the app came from
For a terminated-account 4.3(a) rejection, the job is not to argue that the app is interesting. It is to prove authorship. Apple thinks this binary, metadata, or concept already showed up under a banned account. Your reply has to reconstruct who created it, when, and under which developer account.
That proof has to be dated and attributable. “I promise I didn't copy anyone” is not evidence. A git history that starts before this rejection is. A previously approved build on the same bundle ID is. A TestFlight record, an old Xcode archive, or a public launch post with a timestamp can do the same work.
If the app has already been live, say that in one sentence: this is an update to an existing App Store app, not a new submission. If it is a first release, show the repo, original assets, and that you did not buy a template or inherit someone else's project. If contractors wrote parts of it, show that you commissioned the work.
Useful evidence:
- Git history with first-commit dates, authors, and a remote URL you can share
- Old Xcode projects, zipped source archives, or tagged releases from before this submission
- App Store Connect version history showing prior approved builds on the same bundle ID and account
- Original design files with creation dates: Figma, Sketch, Photoshop, and early screenshots
- Dated public posts, blog posts, or App Store release notes from when the app was built or launched
- Analytics, download, or sales reports covering the period Apple has already distributed the app
- Old TestFlight builds, tester lists, and crash logs from earlier versions
- Contracts, invoices, or contractor commit logs if someone else wrote part of the code for you
What to actually write
Reply in the App Review conversation in App Store Connect. Attach supporting documents there. Do not submit another build yet. Keep it short, calm, and specific. Do not paste a generic “please approve my app” letter.
Include these points, in your own words, with your actual dates and files:
The claim
State that you believe the rejection is an incorrect association, not that Apple is wrong in general. Keep the tone factual.
Who built it, and when
Name the developer or company, the year work started, and that this is the original account. If it is an update, say it is an update to an existing App Store app on the same bundle ID, and when that app first shipped.
What it is not
Say it was not cloned, repackaged, purchased, or built from a commercial template, and that you are not submitting the same product across multiple accounts.
The terminated-account point
Say you are not aware of any connection between this app and a terminated Apple Developer Program account. Do not speculate about who Apple matched you against.
The evidence you can attach
List what you can actually provide: git history with first-commit dates, prior approved version numbers, TestFlight records, dated design files, launch posts. Attach what you can in the conversation instead of only promising it.
The question
Ask whether the similarity is in the binary or source, a third-party SDK, assets, App Store metadata, or the concept. Those have different fixes. You need to know which one they mean.
The ask
Ask for a manual review and, if needed, escalation so App Review can verify authorship. One clear request. Do not send a five-page defense, and do not submit another build in the same breath.
Keep the explanation in every later submission
One more practical habit, from a comment on the Developer Forums: if you ever had a rejection, add a note for the reviewer in any and all later submissions of the app, explaining the situation.
Reviewers rotate. The person who reads the next bug-fix build may not have the Resolution Center history, the appeal, or the conversation where you already proved authorship. Notes for Reviewer is the place that travels with the submission. Put the timeline there. Put the “this is an existing independently developed app, not a clone of a terminated account” sentence there. Put it there even if the current update is unrelated to 4.3(a).
The point is to keep a new reviewer from making the same rejection error because they lack context.
Ask what matched, then get a human
A binary match could come from code or a dependency. A metadata match could involve descriptions, screenshots, names, keywords, or other App Store information. A concept match is something else entirely. Apple may not tell you which application you are matching, or reveal detection details, but even knowing binary versus metadata can radically narrow the investigation.
Escalation matters because there is at least one well-documented pattern where an independent developer received this exact terminated-account rejection because another developer appears to have submitted code originating from a public project. After escalation, Apple investigated the provenance of the code, determined that the rejected developer was actually the original author, and approved the application. The solution was not making the application artificially different. The solution was establishing who legitimately created it.
If messages stall, ask to speak with App Review. Apple provides ways for developers to discuss review outcomes with a representative, including requesting a call through the review process and App Review appointments offered through developer events. The goal of that conversation is not to debate whether Guideline 4.3 should exist. It is to get a human being to investigate the association.
If App Review still upholds the rejection and you believe it is factually incorrect, file a formal App Review Board appeal. Apple specifically recommends that path when you believe your app follows the guidelines. On one Forums thread involving a live app that was suddenly rejected, Apple's reply is the official checklist: give specific reasons why the app complies, submit only one appeal per rejection, and respond to any requests for more information before you appeal. Once the appeal is in, they can escalate it to the App Review Board. Make it easy for someone unfamiliar with the case to reconstruct the application's history. Detailed screenshots and evidence of uniqueness have worked; in another Forums thread, the original poster never posted a resolution, but a later reply said they appealed with that kind of evidence and the Board approved it.
Do not randomly mutate the app
Sometimes changing the binary has worked for developers facing 4.3(a). But that should not be your first move if the rejection is incorrect. Otherwise you can spend days randomly changing the application without knowing which change matters.
It also shifts the conversation from “Apple has incorrectly associated my app with someone else's terminated account” to “I have modified the app that Apple says resembles the terminated app.” Those are very different situations.
If Apple eventually gives you reason to believe a third-party dependency, old asset, template, or other component is triggering the match, then investigate it. Establish provenance first.
And if you believe the rejection is mistaken, use communication, escalation, a call, and an appeal rather than repeatedly throwing builds at the reviewer hoping one gets through.
What “Extended Review” actually looks like
Your rejection may include an Extended Review warning. Mine did. Apple told me:
“This app was found to include one or more issues that present significant safety, security, or quality concerns to users. Repeated submissions of apps with these issues will result in extended review times. Accounts that repeatedly submit apps that do not follow the App Review Guidelines and the Apple Developer Program License Agreement face removal from the Apple Developer Program.”
Extended Review warning
That sounds ominous, so it helps to understand what “extended review” actually means.
Apple does not appear to expose a special App Store Connect status called Extended Review. In practice, it means Apple performs additional verification or investigation beyond the normal App Review process. In some cases, that investigation can include the developer account itself, not just the individual app.
Apple says that most submissions are reviewed quickly, but some require additional verification. If Apple sees signals it considers suspicious, it can investigate more deeply before allowing additional submissions or approving the app.
A developer named Dima Biryuk documented a particularly useful example. After resubmitting his app, Apple changed its status to Rejected and told him: “We need additional time to evaluate your submission and Apple Developer Program account.” Apple explicitly told him that they did not want another binary while the investigation was underway.
His timeline looked like this:
Day 2
Apple began the additional investigation.
Day 3
He offered Apple access to his source code and backend and asked what information they needed.
Day 5
Apple told him that the extended review was still underway.
Day 7
Apple told him he could submit apps again. His app moved from Rejected to In Review, and about three hours later Apple approved it with no additional changes required.
That is essentially the best-case version of an extended review. Apple pauses the normal process, investigates the app or account, determines that everything is legitimate, and then allows the app to proceed without requiring arbitrary changes.
Extended review can also take considerably longer. Another developer on Apple's forums reported receiving this message: “Your submission's review will require additional time… We do not require any further information at this time.” More than 12 days later, the review was still unresolved. There are also more extreme historical examples. One developer reported an app/account review lasting about 40 days, during which Apple repeatedly said it needed additional time to complete the review.
The important takeaway is that an Extended Review warning is not necessarily saying “your account is about to be terminated.” And it does not necessarily mean you are already in an extended review. It means Apple is warning that repeatedly submitting apps while it believes a serious issue remains unresolved can trigger a deeper investigation that may take days or even weeks.
That is one more reason not to repeatedly upload slightly modified binaries hoping one slips through review. If you believe Apple's 4.3(a) determination is wrong, you are usually better off resolving the underlying association through App Review messages, escalation, a call, or an appeal before submitting build after build.
Other examples of devs getting 4.3 guideline rejects from around the internet
The internet is not a clean dataset on 4.3(a). A few people get approved and write it up. A lot of threads just stop. I am including the messy ones on purpose, because they are part of the picture.
A developer explained the app instead of rewriting it
In r/appledevelopers, a developer submitted a new app, got a 4.3(a) spam rejection, sat on it for 10 days, and could not see a way to change the product without changing everything about it. They took a risk: they sent an explanation with repo details and how the app differed from others in the category. Three days later it was approved. That is the cleanest recent public example of provenance-plus-differentiation working without a rewrite.
Link to postA Godot appeal still sitting in limbo
Another r/appledevelopers thread asks how long a rejection appeal takes. It is a Godot-related 4.3(a) case, and at last check there was still no public resolution. That is worth keeping in view. Some people get a reversal in days. Some people wait, follow up, and never get a useful answer on the internet.
Link to postThe terminated-account version of 4.3(a)
There is a recent thread asking whether anyone has received Guideline 4.3(a) specifically because of a match to a terminated developer account. No public resolution. That is the exact flavor of rejection this essay is about, and the public record is still mostly people asking the same question into the void.
Link to postA previously accepted app got the terminated-account rejection
In r/iOSProgramming, the original poster had a TestFlight app rejected “out of nowhere” with the terminated-account wording, even after submitting the exact same code as a previously accepted build. They said the concept and assets were unique, they had not used a template, and an appeal was rejected. The OP never came back with an update. Someone else in the thread did post the steps they took on a similar rejection: delete dead code and unused assets and rebuild, appeal with specific reasons the app is not spam, cancel the current submission, resubmit the new build, put notes in Review Notes about what changed, and in their case it got through the same day after a four-hour review. Treat that as one report, not a guaranteed recipe.
Link to postApple Developer Forums thread 780440
Similar pattern: an app with active users was suddenly rejected. Apple’s reply on the thread is the official escalation script. They recommend submitting an appeal to the App Review Board, and they tell you to (1) provide specific reasons why you believe the app complies with the App Review Guidelines, (2) submit only one appeal per rejection, and (3) respond to any requests for additional information before submitting an appeal. Once the appeal is submitted, they can escalate it to the App Review Board.
Link to postApple Developer Forums thread 770929
The original poster has no public resolution. A later reply is the useful part: someone facing a similar 4.3(a) rejection appealed to the App Review Board with detailed screenshots and evidence for why the app was different and unique. The App Review Board approved it.
Link to postApple Developer Forums thread 776192
Several people in this thread report the same 4.3(a) problem. None of them posted a resolution.
Link to postApple Developer Forums thread 769419
A very weird situation: the former company is gone, they are rebuilding from source, and it likely is a duplicate. Apple reached out to help them. Not useful for ordinary 4.3(a) spam rejections.
Link to postApple Developer Forums thread 773200
No resolution from the original poster. A commenter did offer a good idea: if the app was ever rejected, add a note for the reviewer on any and all later submissions explaining the situation. That can help keep a new reviewer from making the same rejection error because they lack context.
Link to postApple Developer Forums thread 127864
An old thread with no resolution. The original poster comes across as bitter. Included as part of the public record, not as a useful process.
Link to postApple Developer Forums thread 843697
This Forums thread is the kind of post people land on when they search for 4.3(a): not much detail, no useful resolution, and not much for a later reader to reverse-engineer.
Link to postApple Developer Forums thread 659110
Included because it shows up in the same search pile. It is a low-quality post. Do not treat it as a playbook.
Link to postApple Developer Forums thread 757321
Same category: a low-quality Forums post. It is part of the public debris around 4.3(a), not evidence of a working process.
Link to postApple Developer Forums thread 113622
An older Forums thread with no resolution and a weird situation. It is useful mainly as a reminder that this class of rejection is not new, and that hanging a confusing 4.3 case on the Forums has been a dead end for a long time.
Link to postThe evidence that matters most
The central question in a false-positive case is not necessarily “is my app different from every app ever submitted?” A much better question is: can I establish that this app legitimately originated with me?
If you can show years of App Store history, original source-control commits, previous approved binaries, contemporary development posts, original assets, and an established user base, you have a much more concrete argument than simply insisting that the app is unique.
Apple's spam protections exist for a legitimate reason. People clone apps, reskin templates, move spam across developer accounts, and attempt to return to the App Store after accounts are terminated. Similarity detection can also create false positives.
If that happens to you, do not panic and do not immediately rebuild your product. Document the app's history. Respond to App Review. Ask what category triggered the match. Request manual escalation. Request a conversation. Appeal if necessary. Keep the explanation in Notes for Reviewer on every later submission. And make Apple investigate the provenance before you start changing an application you legitimately built.
That is the process that has worked for other developers. I am following it because I built this app, not because Apple has blessed this page.
References
- App Store Review Guidelines, 4.3 Spam
- Appeal an app rejection
- My app got approved after being rejected for Guidelines 4.3a
- How long does it take for a rejection appeal to be reviewed
- Has anyone received Guideline 4.3(a) because of a terminated account
- Previously accepted app gets rejected
- Apple Developer Forums thread 843697
- Apple Developer Forums thread 659110
- Apple Developer Forums thread 757321
- Apple Developer Forums thread 113622
- Apple Developer Forums thread 780440
- Apple Developer Forums thread 770929
- Apple Developer Forums thread 776192
- Apple Developer Forums thread 769419
- Apple Developer Forums thread 773200
- Apple Developer Forums thread 127864
- Dima Biryuk on App Store Review and extended investigation