How Social Pilot turns a simple username into a rich, structured dataset ready for AI analysis.
Raw social media data is messy, incomplete, and not structured for strategic analysis. Social Pilot's data enrichment pipeline solves this by using external services to fetch public data, which is then cleaned, sanitized, and stored in Firestore. This process is the foundation for everything you see in the Audience Explorer.
A step-by-step look at how data flows from a user action to an enriched profile in your database.
It all starts when you click a button like "Get Followers" or "Get Posts" on the "Synced Accounts" page. This action creates an enrichment_jobs document in Firestore.
A Firebase Cloud Function (enrichAndSyncData) is triggered by the new job document. It calls the Apify API to run a pre-configured "Actor" (a serverless cloud program) to scrape the requested public data from the social media platform.
Once the Apify run is complete, the Cloud Function retrieves the raw JSON data. It then cleans and transforms this data into our structured EnrichedProfile or Post format, handling missing fields and ensuring consistency.
The sanitized data is written to the appropriate Firestore subcollection (e.g., /followers, /posts) in batches. Finally, a Firestore Transaction deducts the appropriate number of credits from your account based on the number of profiles retrieved.
Connect your account and run your first enrichment job.
Get Started