{"id":10424,"date":"2025-09-22T20:10:37","date_gmt":"2025-09-23T00:10:37","guid":{"rendered":"https:\/\/learndash.com\/support\/?post_type=docs&#038;p=10424"},"modified":"2025-09-23T11:04:36","modified_gmt":"2025-09-23T15:04:36","password":"","slug":"how-to-set-up-firebase-for-your-learndash-app","status":"publish","type":"docs","link":"https:\/\/learndash.com\/support\/kb\/learndash-app\/done-for-you\/how-to-set-up-firebase-for-your-learndash-app\/","title":{"rendered":"How to Set Up Firebase for Your Learndash App"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-introduction\"><strong>Introduction<\/strong><\/h2>\n\n\n\n<p>Firebase powers push notifications and optional Google Analytics for your Learndash App. With Firebase, you can send native push notifications to Android and iOS users, and, if enabled, track user engagement through Analytics.<\/p>\n\n\n\n<p>This guide explains how to:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Create a Firebase project<br><\/li>\n\n\n\n<li>Register your iOS and Android apps<br><\/li>\n\n\n\n<li>Configure Cloud Messaging for push notifications<br><\/li>\n\n\n\n<li>(Optional) Enable Google Analytics<br><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-creating-a-firebase-project\"><strong>Creating a Firebase Project<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to <strong>Firebase Console<\/strong> and click <strong>Sign in<\/strong>. Log in using your Google Workspace or Gmail account.<br><\/li>\n\n\n\n<li>Click <strong>Create project<\/strong>.<br><\/li>\n\n\n\n<li>Enter a <strong>Project name<\/strong> (e.g., <em>My App<\/em>) and click <strong>Continue<\/strong>.<br><\/li>\n\n\n\n<li>To enable Analytics, leave <strong>Enable Google Analytics for this project<\/strong> checked. To skip, uncheck it and click <strong>Continue<\/strong>.<br><\/li>\n\n\n\n<li>If Analytics is enabled, select an existing account or create a new one, then click <strong>Continue<\/strong>.<br><\/li>\n\n\n\n<li>Click <strong>Create project<\/strong> and wait for initialization.<br><\/li>\n\n\n\n<li>Click <strong>Continue<\/strong> to open your project\u2019s dashboard.<br><\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-registering-your-app\"><strong>Registering Your App<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-ios-app-registration\"><strong>iOS App Registration<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In the Firebase project overview, click the <strong>iOS icon<\/strong> under <em>Get started by adding Firebase to your app<\/em>.<br><\/li>\n\n\n\n<li>Enter your <strong>iOS app\u2019s Bundle ID<\/strong> (must match your Xcode project).<br><\/li>\n\n\n\n<li>(Optional) Enter an <strong>App nickname<\/strong> and <strong>App Store ID<\/strong>.<br><\/li>\n\n\n\n<li>Click <strong>Register app<\/strong>.<br><\/li>\n\n\n\n<li>Download the <strong>GoogleService-Info.plist<\/strong> file and add it to your Xcode project.<br><\/li>\n\n\n\n<li>Follow the CocoaPods integration instructions provided, then click <strong>Continue to console<\/strong>.<br><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-android-app-registration\"><strong>Android App Registration<\/strong><\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Click the <strong>Android icon<\/strong> under <em>Get started by adding Firebase to your app<\/em>.<br><\/li>\n\n\n\n<li>Enter your <strong>Android Package name<\/strong> (e.g., <em>com.yourdomain.app<\/em>).<br><\/li>\n\n\n\n<li>(Optional) Add an <strong>App nickname<\/strong> and <strong>Debug signing certificate SHA-1<\/strong>.<br><\/li>\n\n\n\n<li>Click <strong>Register app<\/strong>.<br><\/li>\n\n\n\n<li>Download the <strong>google-services.json<\/strong> file and place it in your \/app\/ module directory.<br><\/li>\n\n\n\n<li>Add the Firebase SDK dependencies in your Gradle files as instructed, then click <strong>Continue to console<\/strong>.<br><\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-configuring-push-notifications\"><strong>Configuring Push Notifications<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In Firebase Console, click the <strong>gear icon<\/strong> > <strong>Project settings<\/strong>.<br><\/li>\n\n\n\n<li>Select the <strong>Cloud Messaging<\/strong> tab.<br><\/li>\n<\/ol>\n\n\n\n<p><strong>For Android<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Copy the <strong>Server key<\/strong> and <strong>Sender ID<\/strong>.<br><\/li>\n<\/ul>\n\n\n\n<p><strong>For iOS (APNs)<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Under <strong>APNs certificates<\/strong>, click <strong>Upload<\/strong>.<br><\/li>\n\n\n\n<li>Upload your <strong>.p8 key file<\/strong>, enter the <strong>Key ID<\/strong> and your <strong>Team ID<\/strong>.<br><\/li>\n\n\n\n<li>Click <strong>Save<\/strong>.<br><\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-optional-enabling-google-analytics\"><strong>(Optional) Enabling Google Analytics<\/strong><\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>In Firebase Console, go to <strong>Analytics > Dashboard<\/strong> to verify data collection.<br><\/li>\n\n\n\n<li>In WordPress Admin, navigate to <strong>Learndash App > Settings > Integrations > Firebase<\/strong>.<br><\/li>\n\n\n\n<li>Toggle on <strong>Enable Firebase Analytics<\/strong>, enter your <strong>Firebase Project ID<\/strong>, and click <strong>Save Changes<\/strong>.<br><\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-troubleshooting-amp-faqs\"><strong>Troubleshooting &amp; FAQs<\/strong><\/h2>\n\n\n\n<p><strong>Q: My APNs key upload failed.<\/strong><strong><br><\/strong> A: In Apple Developer &gt; Certificates, Identifiers &amp; Profiles &gt; Keys, create a key with <strong>Apple Push Notifications service (APNs)<\/strong> enabled, download the .p8 file, and retry the upload.<\/p>\n\n\n\n<p><strong>Q: Push notifications aren\u2019t arriving on Android.<\/strong><strong><br><\/strong> A: Check that your <strong>Server key<\/strong> and <strong>Sender ID<\/strong> in <strong>Learndash App &gt; Settings &gt; Push Notifications<\/strong> match those in Firebase.<\/p>\n\n\n\n<p><strong>Q: Firebase config file not found at runtime.<\/strong><strong><br><\/strong> A: Ensure GoogleService-Info.plist is in your Xcode app bundle and google-services.json is placed in \/app\/ for Android and listed in your Gradle settings.<\/p>\n\n\n\n<p><strong>Q: I don\u2019t see my app in Firebase Console.<\/strong><strong><br><\/strong> A: Make sure the <strong>Bundle ID<\/strong> or <strong>Package name<\/strong> exactly matches your app settings; typos will block registration.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Firebase powers push notifications and optional Google Analytics for your Learndash App. With Firebase, you can send native push notifications to Android and iOS users, and, if enabled, track user engagement through Analytics. This guide explains how to: Creating a Firebase Project Registering Your App iOS App Registration Android App Registration Configuring Push Notifications&#8230;<\/p>\n","protected":false},"author":58,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_helpful_status":1,"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_swpsp_post_exclude":false,"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"doc_category":[291],"doc_tag":[],"knowledge_base":[283],"class_list":["post-10424","docs","type-docs","status-publish","hentry","doc_category-done-for-you","knowledge_base-learndash-app"],"year_month":"2026-04","word_count":498,"total_views":"550","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"display_name":"Stephanie Liy","author_link":"https:\/\/learndash.com\/support\/author\/stephaniei\/"},"doc_category_info":[{"term_name":"Done For You","term_url":"https:\/\/learndash.com\/support\/kb\/learndash-app\/done-for-you\/"}],"doc_tag_info":[],"taxonomy_info":{"doc_category":[{"value":291,"label":"Done For You"}],"knowledge_base":[{"value":283,"label":"LearnDash App"}]},"featured_image_src_large":false,"comment_info":0,"knowledge_base_info":[{"term_name":"LearnDash App","term_url":"https:\/\/learndash.com\/support\/kb\/learndash-app\/","term_slug":"learndash-app"}],"knowledge_base_slug":["learndash-app"],"_links":{"self":[{"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/docs\/10424","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/users\/58"}],"replies":[{"embeddable":true,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/comments?post=10424"}],"version-history":[{"count":1,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/docs\/10424\/revisions"}],"predecessor-version":[{"id":10425,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/docs\/10424\/revisions\/10425"}],"wp:attachment":[{"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/media?parent=10424"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/doc_category?post=10424"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/doc_tag?post=10424"},{"taxonomy":"knowledge_base","embeddable":true,"href":"https:\/\/learndash.com\/support\/wp-json\/wp\/v2\/knowledge_base?post=10424"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}