Frequently Asked Questions
Common questions about setting up PushPilot, connecting push providers, campaigns, and billing.
Setup & Connections
I uploaded my Firebase service account JSON but the project shows as "invalid". What should I check?
Check the following:
- The file is a valid service account JSON (not a Firebase config file or google-services.json).
- The service account has the Firebase Admin SDK role in Google Cloud IAM, or at minimum the Firebase Cloud Messaging API scope.
- The
project_idin the JSON matches an active Firebase project. - The service account has not been disabled in the Google Cloud Console.
Try regenerating a new key from Firebase Console → Project Settings → Service accounts.
Do I need to add PushPilot to my Firebase project as a collaborator?
No. PushPilot uses the service account key you upload to authenticate directly with Firebase. No collaborator access is required.
Can I connect multiple Firebase projects to the same PushPilot workspace?
Yes. Go to Connections → Firebase Projects → Add Firebase Project for each project. You can then select which project to use per campaign.
Can I use both Firebase and OneSignal in the same workspace?
Yes. PushPilot supports multiple push projects of any type in the same workspace. Each campaign is linked to a specific project.
My OneSignal discover flow shows no apps. What is wrong?
Make sure you are using the Organisation API Key, not a per-app REST API Key. The Organisation Key is found in OneSignal → account name → Organisation Settings → Keys & IDs.
If you only have one app and no organisation account, use Method B: Direct Connect instead.
Mobile SDK
I subscribed to the "all" topic but test notifications are not appearing on my device.
Run through this checklist:
- On iOS, confirm the user granted notification permission (
requestPermissionreturnedauthorized). - Confirm
subscribeToTopic('all')was called after Firebase is initialised and permission was granted. - Check the Firebase Console → Cloud Messaging → Send test message to verify that FCM itself can reach the device.
- The topic subscription takes up to a minute to propagate on FCM servers after the first call.
Does PushPilot send to individual device tokens or to topics?
PushPilot exclusively uses FCM topics for Firebase and OneSignal segments for OneSignal. There is no individual token or device management in PushPilot, all targeting is audience-based.
What happens if a user unsubscribes from the "all" topic?
That device will stop receiving notifications sent to the all topic. If you want to let users opt out of specific notification types, subscribe them to more specific topics (e.g. marketing, updates) and let them unsubscribe from individual topics while staying subscribed to others.
Campaigns & Notifications
What is the difference between a campaign and a notification?
A campaign is the overarching goal and schedule (e.g. "weekly re-engagement drip"). A notification is a single push message generated within that campaign. One campaign can contain many notifications sent over days or weeks.
How does the AI generate notification content?
PushPilot uses your Business Context (description of your app and goals) and the campaign objective to generate notification titles, bodies, and optionally images. You can edit pending or scheduled notifications before they are sent.
Does every notification need approval?
No. Active campaigns generate upcoming notifications directly in the Scheduled state. If a notification is Pending, the Approve action schedules it. Review and edit upcoming content before its send time.
Why is my campaign stuck in Draft?
A new campaign stays in Draft until you choose Activate. Before activating:
- Review the provider, topic or segment, dates, send time, and timezone.
- Check your plan's active campaign limit. Activation is blocked when you reach it.
- You do not need an approved notification first. Activation starts generation of upcoming scheduled notifications.
What does "Apply Image" do on a campaign?
The Apply Image action sets the same image URL on all Pending and Scheduled notifications in a campaign at once. This is useful when you want a consistent visual across a campaign's notifications without editing each one individually.
Billing & Plans
Does the free trial require a credit card?
No. Eligible accounts start a trial automatically when a trial plan is available. Check Settings → Billing for your plan and trial end date. No payment information is required until you decide to upgrade.
What happens when I reach my notification limit?
Further notifications will be blocked for the current billing period. You will see a warning banner in the dashboard. Upgrade your plan or wait for the period to reset (the reset period is shown with your plan).
Can I switch between monthly and annual billing?
Yes. Go to Settings → Billing → Change Plan. The plan selector shows the available billing periods and any annual savings.
Will my data be deleted if I cancel my subscription?
No. All campaigns, notifications, and analytics are retained on the Free plan. Only features and limits change when you downgrade. You can reactivate a paid plan at any time to regain access to Pro/Heavy features.
Account & Team
How do I invite team members?
Go to Settings → Team Members → Invite. Enter the email address of the person you want to invite. They will receive an invitation email and can join your workspace after accepting.
Can I have multiple workspaces?
Yes. Click the workspace switcher in the dashboard sidebar and select Create Workspace. Note that trial eligibility applies once per user across all workspaces.
How do I update my Business Context?
Go to Business Context in the sidebar or use the AI chat on the Business Context page. You can also auto-generate context by pasting your Google Play Store URL or website URL and clicking Generate.
Still need help?
If your question isn't answered here, reach out, we're happy to help.