Reflecting on 26 days in App Review Purgatory
I escaped from App Review Purgatory. AMA.
My first update to Word Game Hero which would eventually be rejected was submitted on the 16th of January. I submitted approximately 15 builds in between that submission and the one which was approved on the 11th of February. During this time I felt as if it was an unending, completely opaque process, and one in which redemption and escape seemed like a hope dangled just out of reach, unattainable.
This near month long process caused me to really heavily consider a lot of aspects of attempting to make a living selling iOS apps. I follow Apple and iOS developer related news relatively closely, but I have never considered issues of trademark and App Review to this extent. They never impacted me directly until now. There are those with far more pressing concerns, but I found the month very stressful.
Certain thoughts kept swirling around my head. What was going to happen? Not just to Word Game Hero, but to Mixtapes? Where is the line? Is my developer account in its entirety at risk if I keep disputing this? I thought I had a right to dispute this, can disputing it now be seen negatively? Needless to say, these weighed on my mind and I found the process tough.
Here are my reflections, which I have attempted to corral into a somewhat sensible order.
How did this all start?
I was introduced to Wordle via Twitter at the end of December, actually via one of the many implementations that took the core game mechanics but made changes allowing you to play more than one game a day. I quickly fell for the game, hard, playing not only the daily Wordle, but the unlimited versions far more often. I thought about what I would want to add to the game or change, and set about to create my own word guessing game with the same core mechanics, but including my own twists and additions.
This culminated in Word Game Hero. I released the game just before (days before at best!) many others did so, eventually drawing a lot of attention to the genre. A number of people commented on certain attempts to capitalise on Wordle's popularity, taking exception to specifics on Twitter, leading John Gruber to highlight the issue on Daring Fireball. Following this Apple pulled what seemed like a large number that they decreed to be outright clones or misleading, although Apple alone know how many they truly removed from the App Store.
Word Game Hero survived this first purge, and had the honor of being specifically called out as not a clone in John Gruber's follow up piece, A Five-Letter Word for ‘Rip-Off’.
Meanwhile I am full of ideas. Buzzing. My partner commented that she had never seen me so energetic on a project. It had hit a nerve with me, where I had so many ideas on how to build a game that I would love, and I hoped others would too. From fun easter eggs to additional game play mechanics and more I was coding like a person possessed. In the week since my game was released I had released 10 updates, from adding clues a few hours after the initial release, to a popular word toggle to allow tweaking the difficulty.
Next up was adding localisation and game play modes, based on user feedback and my own ideas. I also had started to receive bug reports, detailing problems with crucial functionality too. Users statistics were completely wrong, and it was impossible to unlock letter difficulties after 4 and 5 letters. These bugs needed to be fixed fast, but were luckily very simple. Right here is where I started running into invisible walls.
First up, bug fixes. Embarassingly trivial to fix, I pushed a build fixing these and nearly as soon as processing finished submitted for review. No problem, I'll keep working.
Second, localisation. Wouldn't it be great if users around the world could see the instructions and UI in their own language? I haven't worked up to puzzles yet in another language, but the UI seems like a great start. It opens up the market for the game a little, and it also adds an angle where users who are learning English may find Word Game Hero a fun supplement to their studies. Look, guessing words may not teach you English, but maybe it will be a more enjoyable way to test and reinforce learning. Factoring in the dictionary UI I had implemented that you can see after a game, it seemed like a match made in heaven. It took me a few days this time, but I got Word Game Hero localised into four or five additional languages (I forget exactly where in the process I added Hindi). SwiftUI made this fairly painless, but still time consuming. I figure out how to take screenshots for each language and now I am good to go. I'm now in the middle of my first App Review which has taken more than a day for this game, it has been "In Review" for a few days. I think to myself that it is a little strange, but nothing more of it. With my app Mixtapes I have had that happen before, so I just pulled it from review and submitted a new build. About an hour or two later the new build goes into "In Review", which I think is great.
I was wrong. Multiple builds of Word Game Hero languished "In Review" until the 24th of January, when I received my first actual rejection.
Rejection and appeals
On the 24th of January I received my first actual rejection, declaring that Word Game Hero was in breach of Guideline 4.1 - Design - Copycats. I replied to the message in App Store Connect, and then also submitted an appeal.
The full text of guideline 4.1 is here, sourced from the review guidelines https://developer.apple.com/app-store/review/guidelines/.
Come up with your own ideas. We know you have them, so make yours come to life. Don’t simply copy the latest popular app on the App Store, or make some minor changes to another app’s name or UI and pass it off as your own. In addition to risking an intellectual property infringement claim, it makes the App Store harder to navigate and just isn’t fair to your fellow developers.
To cut a very long story slightly shorter, I don't believe that any version of my game can be called a copycat. However, Apple is entitled to disagree! What I take exception to is disagreeing with no details nor specifics of any kind.
This went back and forth in a rather frustrating manner, as I submitted new builds and 99% of the time they languished in review for multiple days. I had yet to realise that cancelling the submission was maybe hurting my chances, as it was (seemingly) going into a naughty pile which was slowing the review. In fact, referring to the dialogue as back and forth is disingenuous. The dialogue was entirely one sided in terms of meaningful discussion or communication attempts.
I would send a multiple paragraph defence of my game, and many days later receive the same message word for word as previously. Ignoring my requests for any clarification at all, or for a call to explain to me further. At this point, Wordle had yet to be mentioned as the game I was being accused of being a copycat of! Does that make sense to you? Here is a (very mildly!) exaggerated retelling, as I don't know whether it is kosher to share the actual messages.
24/01/22 06:24 AM App Review: "Your game is a copycat see guideline 4.2.1."
24/01/22 06:44 AM Jake: "Look I don't think so and here's why. [Paragraphs of explanation]. Which game do you think it is a copycat of? Then I can show the specific differences, not just what I think is unique."
28/01/22 10:53 PM App Review: "Your game is a copycat see guideline 4.2.1."
After yet another build of version 1.2 was rejected, I received a second email and another message in App Store Connect, this time regarding version 1.1.2 which was the current version published on the store.
I was informed that version 1.1.2 had been re-reviewed, and was now retroactively deemed to be also in breach of the guidelines. Specifically guideline 4.1. Not specified was what I was being accused of being a copycat of. You can argue that it should be obvious, but given how many games were (and still are) on the store with far less differentiation than mine, I feel it should be specified at a minimum. Otherwise how do you possibly defend it? Catalog the differences between every game using the word guessing mechanic?
This is where things really ratcheted up in intensity for me, and stress. I've received no specifics at all on the copycat accusation and indictment, and now I have 14 days to somehow comply. The "App Review Appeal process" started to feel like a drawn out set up designed to guarantee failure, with the slightest hint of plausible deniability. I wrote a full defence and comparison between my game and others at the time which includes the main points that I made to App Review and the App Review Appeal Board. I also sent both these teams this content, both the link and printed out as a PDF, as an attempt at long form exposition. I continued every method I could think of to escalate and to get in contact with the App Review Appeal Board, and received nothing but communications that my case was in progress.
I finally received a call from someone to inform me of the outcome. Here is a rough excerpt of the actual conversation, where I was notified that my appeal was unsuccessful.
App Review: "I regret to tell you that your appeal is unsuccessful. Thank you for sending in all your evidence and those further details, those have been received and were reviewed by the App Review Appeal Board. I am not part of the board, I am just calling to give you the outcome."
Jake: "Ah damn. Why was the appeal rejected, what were the reasons?"
App Review: "Your game was found to be leveraging the popularity of something else."
Jake: "Are you referring to Wordle?"
App Review: "Yes."
Jake: "Ah. Did you see all my differences? I listed them out in lots of the content I sent."
App Review: "Yes we did."
Jake: "That's still not enough? It is still being rejected for being a copycat?"
App Review: "Yes. Despite the clues, multiple letter games, unlimited puzzles, sharing and SharePlay, timed mode and practice mode the App Review Appeal Board have still decided that it is leveraging the popularity of something else."
Jake: "... Wait you agree all of those are differences? Yet it is still a 'copycat'?"
App Review: "Yes. Your game was found to be leveraging the popularity of something else."
Jake: "... Huh."
From the above conversation, I have mostly cut out about 20 minutes of me begging, cajoling and desperately explaining my viewpoint and frustration. I also cut out my complaining about specific facets of the experience, such as the five day review times slowing down any chance I had to beat the countdown to app removal. The person on the phone was incredibly kind to mostly just listen, and I expressed multiple times that my frustration was not with them individually, but rather I found the policies and process incomprehensible. For example, why was my app not being approved while others with much less differentiation had been approved? The person I spoke to was compassionate and patient, and despite not being the outcome I was after was a very positive interaction.
I'll spare you the rest. What is crucial from this is what they didn't say, which in the end was my key to getting the game approved. From the list of differences to Wordle and any others, what the caller hadn't mentioned was the UI. So by deduction, if they agree with all the mechanics and gameplay differences, but don't mention the UI that must be it.
Once I hung up the phone I made some changes to the default colors and to the screenshots for the App Store, and added a textured background. I tweaked things like the shadows and shapes of the tiles, changing the shapes from square to round. My reasoning was that if Apple were agreeing to all the mechanics differences but still think it leverages the popularity of another game, then the remaining thing is the look. I fully concede that at a glance the game used to look like Wordle. So suspecting that this was the sticking point, but unfortunately not knowing, I addressed it head on. The settings to change the appearance had been there for a while, so it was simply a matter of changing the defaults. I also set the screenshots to default to dark mode to be further differentiated.
Once I had these changes built I resubmitted a few hours later. A few hours after that it went into review, and remained there for a few days. Then one morning I woke up and the sun was shining a little brighter, and I saw the email I had been waiting for since three weeks ago. The Word Game Hero version 1.2 submission was accepted for release on the App Store.
With this the key was turned, Word Game Hero version 1.2 was published, and I was released from App Review purgatory.
Mistakes and learnings
- Resubmitting instead of submitting a new build within the existing submission, closing the chat with App Review in App Store Connect.
Once I resubmitted, the paltry little window to type a message to App Review disappeared.
Don't cancel your submission!
Update the build or metadata as needed, and resubmit as part of the same submission. This may help you avoid the naughty queue reserved for miscreants and the damned.
Nowhere does it tell you explicitly not to cancel the submission, that you can just resubmit! In fact I thought that I had to resubmit, which I am unsure is how it used to be until the new submission process or just a misconception that I have always had.
- You will never get specifics of a copycat rejection.
Apple will never tell you "x, and y are too similar by our judgement, but yes a, b and c are fine". They seem to have an idea, but won't tell you this outright. This led to some hilarious conversations like the one described above, where I was laughing through tears of frustration.
A small part of me is sympathetic to this, and to the opaqueness of the whole process, as I can imagine that the more transparency there is the easier it is to abuse. However, as an indie developer trying to play within the rules, it feels like I am being blindsided by a monolith which refuses to speak to me.
In the end, it felt like my only option was to resubmit blindly, hoping that this time I had narrowed down exactly what the issue is and it would pass, while simultaneously worrying that this would be held against me.
- A trademark claim is not needed for Apple to decide that you are "leveraging the popularity of another app".
I fully support the rights of IP owners and trademark owners, however I don't think Apple should be proactively deciding what is a trademark or copyright violation and what is not, except for the most blatant of cases.
Once my app had no mention of any others in the name, metadata, app store description or even in Settings, why should Apple decide unilaterally that it looks too similar? If Wordle decide that, there are legal processes for them to take, and trademark claim procedures within the Apple ecosystem too. However, I have the right of reply in those scenarios and this is a crucial difference. When App Review decided that my game was in breach, it very much felt like I had no right to dispute this or to dialogue. This is a huge problem for a storefront of its size. It also just simply shouldn't be the experience that Apple wants indie developers to have. I am a huge believer that the more indie apps and developers the better, and Apple adding invisible hoops to jump through is to their own detriment as much as to developers.
I found this whole process incredibly trying, as I would if you asked me to navigate a room I had never seen before while blindfolded. What poured salt in the wound was rewatching videos from WWDC about how to approach App Review, and hearing things along the lines of "if we do find an issue with your app, we will work with you to resolve it". I would love that! I was basically begging for that every other day for three weeks, and all I got was variations of "your App Review/Appeal is in progress and if the team need anything further they will contact you".
That said, the one human interaction I had was very kind and genuinely took my many concerns on board, which I greatly appreciate.
I don't view this as a failure of any individuals. I don't resent the App Review teams for doing their jobs, following processes, procedures and guidelines. I view this as indicative that App Review itself is a broken and haphazard process, with glaring areas for improvement.
So what would I like to see change?
Tune in next week to find out.