英語App Store対応、全部やった話。スクショ・ASO・サブスク、8項目の完全手順
DoneLayer v1.6.0 のリリースに合わせて、App Storeの英語対応を全部やりきりました。 スクリーンショット作成からサブスクリプションのローカライズまで、ClaudeCodeと一緒に進めた全手順を公開します。

v1.6.0 のリリース準備をしていたとき、ずっと後回しにしていた「英語対応」に本腰を入れることにしました。
日本語版はそれなりに整っていたのですが、英語圏のユーザーが検索して辿り着いたときに日本語のスクショと説明文しかない状態はさすがにマズい。というか、せっかく言語切替機能を v1.6.0 で入れたのに、App Store が日本語のままだと本末転倒ですよね。
ClaudeCode と一緒に「App Store の英語対応、全部やろう」と決めて進めた話を書きます。
1. まずスクリーンショットをどうするか問題
英語対応で最初に考えたのがスクショです。日本語版はすでに入稿済みなので、英語ロケール用に別途用意する必要がある。
以前の記事でも書きましたが、ClaudeCode の「App Store Screenshots」スキルを使ってローカルにエディタを立ち上げています。
今回は9枚のスクリーンショット(01〜09)を全部使ってエディタに流し込みました。手順としては:
- スクリーンショット画像を
public/screenshots/apple/iphone/en/以下に01.png〜09.pngで配置 app-store-screenshots.jsonにスライド9枚分の構成を記述- 全スライドのレイアウトを
device-bottomに統一 - テーマカラーをアプリのライム(
#d4ff00)に変更
背景グラデーションを実装するときに一工夫していて、html-to-image が透過PNGを吐いてしまう問題があったので backgroundColor: "#000000" を toPng のオプションに追加しました。以前これで入稿エラーになっていたので、先に潰しておけてよかった。
2. 英語コピーをどう作るか
スクリーンショットのコピーはすべて日本語で考えていたものを英語に意訳しました。直訳すると日本語的な文体になるので、意味を保ちながら短くするのがポイント。
たとえば「記事を読んだら AIが自動タスク化」は Read an article. AI turns it into tasks. に。「候補から自分で実践をコミット」は Pick a task. Commit to it. に。
意訳のコツは「名詞で終わらせない、動詞で終わらせる」。英語のApp Storeスクショは行動喚起が強い方が刺さります。
3. アプリ名とサブタイトルのASO戦略
ここが一番悩んだポイントです。日本語版のアプリ名は「AIタスク管理 - DoneLayer」で、カテゴリを先に出して後にプロダクト名という構成。
でも英語圏では逆が正解です。プロダクト名を先頭に置くのが App Store の慣習で、ASO 的にもそちらが正しい。
AI Task Manager - DoneLayer ← 弱い
DoneLayer - AI Task Manager ← 正解
サブタイトルは30文字制限があるので、キーワードフィールドと重複させないことが大事です。
最終的に決めたのがこれ:
Your Reading Journal & Tracker
journal・tracker は検索ボリュームが高くてキーワードフィールドに入れていない語なので、サブタイトルでカバーするのが正解。Your で始めることで個人向けアプリとして刺さりやすくなります。
4. キーワード100文字の使い方
キーワードフィールドは100文字しかない。タイトル・サブタイトルとの重複は無駄なので、そこで使っていない語を優先的に入れる。
self-improvement,productivity,reading,habit,to-do,action,goals,notes,AI,learning,reflection,weekly
98文字。2文字余りましたが、入れたい語がなかったのでそのままにしました。
ポイントは「英語圏で検索されやすいカテゴリワード」を起点に考えること。「積読」は英語で tsundoku という単語が実は認知されつつありますが、App Store の検索では reading の方が圧倒的に強い。
5. 概要(Description)はネイティブに意訳
日本語の概要をそのまま DeepL に投げると、微妙に日本語っぽい文体になります。今回は日本語版の概要を ClaudeCode に渡して「ネイティブに確実に伝わる英語に意訳して」と指示しました。
直訳ではなく意訳なので、たとえば冒頭は:
You read the article. Nothing changed.
DoneLayer fixes the gap between reading and doing.
日本語版の「記事を読んだのに、行動が変わっていない」のニュアンスをそのまま英語に落とし込んでいます。短文で区切ってテンポよく読めるようにするのが英語の App Store 概要の定石です。
コミットUIの説明が特に難しくて、「長押し400ms」という設計意図を英語でどう伝えるかが課題でした。
Hard to tap by accident. Easy to mean it.
これに落ち着きました。直訳せずに「意図を持った操作」という体験を一行で表現しています。
6. プライマリ言語の変更でハマった
英語版の設定が全部終わったあと、「プライマリ言語を英語に変更しよう」と思ったらエラーが出ました。
プライマリロケールを保存できませんでした。
最初にすべての必要なスクリーンショットを、
この言語の各バージョンに追加する必要があります。
要は「過去のすべてのバージョンにも英語スクショが必要」ということです。v1.5.0、v1.4.0…全部に入れないといけない。これはさすがに手間がかかりすぎる。
解決策は「プライマリ言語は日本語のまま、英語ロケールを追加する」でOK。プライマリが日本語でも、英語圏ユーザーには英語ロケールの情報がちゃんと表示されます。
7. サブスクリプションのローカライズを忘れずに
App Store Connect のサブスクリプション設定は、アプリ本体とは別の場所にあります。ここも英語ロケールを追加しないと、英語ユーザーが購入シートを開いたときに日本語が出てしまう。
設定場所:App Store Connect → アプリ内課金 → DoneLayer Premium → ローカライズ

追加した内容:
- 表示名:
DoneLayer Premium - 説明:
Unlock Knowledge Map, Weekly AI Report, and share cards.
サブスクリプショングループ名も同様に英語を追加しました。ここは意外と見落とされやすいポイントなので、英語対応するときは必ず確認してください。
8. What's New は短く、具体的に
リリースノートは長く書かない方がいいです。英語圏のユーザーは流し読みするので、箇条書きで3行以内が理想。
• Language support: switch between English and Japanese in Settings
• Fixed a bug where tapping Commit quickly could create duplicate tasks
• Various stability and performance improvements
v1.6.0 の目玉は言語切替機能なので、それを最初に書いてあとは簡潔に。
まとめ
今回やった英語対応の全体像をまとめます。
- スクリーンショット:英語コピーで9枚作成、英語ロケールに入稿
- アプリ名:
DoneLayer - AI Task Manager(プロダクト名を先頭に) - サブタイトル:
Your Reading Journal & Tracker(キーワード未使用語でカバー) - 概要:日本語版から意訳、動詞で終わらせる英語らしい文体に
- キーワード:98文字、重複なし
- What's New:3行以内、箇条書き
- サブスクリプション:本体とは別にローカライズが必要
- プライマリ言語:日本語のまま+英語ロケール追加でOK
英語対応は「翻訳するだけ」ではなく、App Store の構造を理解した上で設定する箇所が多いです。特にASO(アプリ名・サブタイトル・キーワードの重複排除)とサブスクリプションのローカライズは、やらないと損をするポイントなので先に潰しておくことをおすすめします。
→ Threads投稿ネタになりそうな学び:「英語版App Storeのアプリ名、プロダクト名を先頭にするのが正解」「プライマリ言語は変えなくていい、英語ロケール追加で十分」
おわりに
EAS Build でクラウドビルドが走っている間にほぼ全部の設定を終わらせることができました。ビルド待ちの時間を無駄にしないのが個人開発の時間効率を上げるコツかもしれません。
\#個人開発 #ClaudeCode #AppStore #ASO #iOS #DoneLayer
