Using the Facebook SDK and Singular SDK/S2S in the Same App

Using Facebook SDK with Singular SDK

Comprehensive guide for implementing both Facebook SDK and Singular SDK in same app, covering configuration requirements, data accuracy considerations, and integration best practices.


Integration Overview

Singular as Mobile Measurement Partner

If Singular SDK integrated in app, Facebook SDK not required for tracking Facebook attribution or viewing events in Facebook platform. As certified Mobile Measurement Partner (MMP) of Facebook, Singular SDK handles all attribution and event tracking requirements.

Singular MMP Capabilities:

  • Attribution Tracking: Automatically tracks installs and conversions from Facebook campaigns
  • Event Forwarding: Sends in-app events to Facebook for campaign optimization
  • Data Reporting: Provides unified attribution data across all channels including Facebook
  • Certified Integration: Facebook-approved measurement solution with full API access

When to Use Facebook SDK

Valid Use Cases

While Singular SDK handles attribution and analytics, some organizations choose to integrate Facebook SDK for additional Facebook-specific features beyond measurement.

Facebook SDK Features
#

Social Features

Facebook Login

Enable users to authenticate using Facebook credentials, simplifying onboarding and reducing registration friction.

Facebook Share

Allow users to share app content directly to Facebook, increasing organic reach and viral growth potential.


Advanced Advertising Features

Facebook Mobile App Install Ads

Access advanced capabilities of Facebook Mobile App Install Ads including:

  • Dynamic Product Ads: Retarget users with personalized product recommendations
  • Audience Network: Extend campaigns beyond Facebook platform to partner apps
  • Custom Audiences: Create audiences based on Facebook user data
  • Advanced Targeting: Leverage Facebook's detailed targeting options

Facebook Platform Integration

Graph API Access

Integrate with Facebook Graph API for reading and writing data to Facebook social graph.

Messenger Integration

Enable communication through Facebook Messenger for customer support or engagement campaigns.

Integration Decision: Only integrate Facebook SDK if your app requires specific Facebook platform features beyond attribution and analytics. For measurement purposes alone, Singular SDK provides complete functionality.


Data Accuracy Considerations

When using both Facebook SDK and Singular SDK in same app, proper configuration essential to maintain data accuracy and prevent discrepancies.

Common Data Issues

Event Duplication

Without proper configuration, events may be sent twice to Facebook (once from Facebook SDK and once from Singular SDK), causing inflated event counts and inaccurate reporting.

Critical Issue: Duplicate event tracking leads to:

  • Inflated Event Counts: Facebook reports double actual events, skewing campaign performance metrics
  • Incorrect Session Counts: Session data appears artificially high on Facebook platform
  • Campaign Optimization Problems: Facebook algorithm receives incorrect signals for campaign optimization
  • Budget Allocation Issues: Inaccurate data affects budget distribution across campaigns

Solution Requirements

Configuration Strategy

To maintain data accuracy when using both SDKs, disable automatic event logging in Facebook SDK while allowing Singular SDK to handle all measurement and event forwarding to Facebook.

Integration Architecture:

Component Responsibility Configuration
Singular SDK
  • Handles all attribution tracking
  • Tracks in-app events
  • Forwards events to Facebook
  • Provides unified analytics

Standard configuration

No special changes required

Facebook SDK
  • Provides Facebook platform features
  • Enables Login, Share, etc.
  • Does NOT send events
  • Does NOT track attribution

Disable automatic logging

Prevent duplicate event sending


Implementation Steps

Follow these steps to use Facebook SDK alongside Singular SDK while maintaining data accuracy and preventing event duplication.

Step 1: Disable Facebook SDK Event Logging

Platform-Specific Configuration

By default, Facebook SDK automatically sends events to Facebook platform. This automatic logging must be disabled to prevent duplicate event tracking.

iOS - Disable Automatic Event Logging
#

Configuration Method

Follow Facebook's official instructions under "Disable Automatically Logged Events" in Getting Started with App Events for iOS.


Info.plist Configuration

Add following key to your Info.plist file to disable automatic event logging:

<key>FacebookAutoLogAppEventsEnabled</key>
<false/>

Verification Steps

  1. Check Info.plist: Verify key added correctly with value set to false
  2. Test Build: Build and run app to ensure configuration applied
  3. Monitor Events: Verify Facebook SDK not sending events using Facebook Analytics dashboard

Important: After disabling automatic logging, Facebook SDK will not send any events to Facebook. Singular SDK will handle all event forwarding to Facebook platform.

Android - Disable Automatic Event Logging
#

Configuration Method

Follow Facebook's official instructions under "Disable Automatically Logged Events" in Getting Started with App Events for Android.


AndroidManifest.xml Configuration

Add following metadata to your AndroidManifest.xml file within <application> tag:

<application>
    ...
    <meta-data 
        android:name="com.facebook.sdk.AutoLogAppEventsEnabled"
        android:value="false" />
    ...
</application>

Alternative: Programmatic Configuration

Alternatively, disable automatic logging programmatically in your Application class:

JAVAKOTLIN
import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        
        // Disable automatic event logging
        FacebookSdk.setAutoLogAppEventsEnabled(false);
    }
}

Verification Steps

  1. Check AndroidManifest: Verify metadata added correctly with value set to false
  2. Build Application: Clean and rebuild app to ensure configuration applied
  3. Monitor Events: Verify Facebook SDK not sending events using Facebook Analytics dashboard

Important: Choose either AndroidManifest configuration OR programmatic configuration, not both. Manifest configuration recommended for consistency.


Step 2: Configure Facebook Attribution

Singular Partner Configuration

After disabling Facebook SDK event logging, configure Facebook attribution in Singular platform following standard setup procedures.

Setup Instructions: Follow steps 1-4 in Facebook Ads Attribution Integration guide to complete Facebook attribution configuration.

Configuration Checklist:

  1. Add Facebook App ID: In Singular platform, navigate to Attribution → Partner Configuration and add Facebook App ID
  2. Configure Attribution Settings: Set attribution windows and measurement preferences
  3. Map Events: Configure event mapping between Singular and Facebook
  4. Enable Postbacks: Set up event postbacks from Singular to Facebook for campaign optimization

Step 3: Validate Configuration

Testing Procedures

After completing configuration, validate proper implementation using Singular and Facebook testing tools.

Validation Checklist
#

Singular SDK Validation

  1. Testing Console: Use Singular Testing Console to verify events tracked correctly
  2. Event Logs: Check Singular Export Logs to confirm events recorded
  3. Attribution Verification: Verify Facebook installs attributed correctly in Singular reports

Facebook Platform Validation

  1. Events Manager: Open Facebook Events Manager and verify events appearing from Singular
  2. Event Count Comparison: Compare event counts between Singular and Facebook to ensure no duplication
  3. Session Tracking: Verify session counts match expected values without inflation

Data Accuracy Checks

Check Expected Result
Event Counts Events appear only once in Facebook (from Singular), not duplicated
Session Counts Facebook shows normal session counts without artificial inflation
Attribution Data Singular reports show Facebook installs with correct campaign data
Facebook Features Facebook Login, Share, and other features work correctly in app

Validation Timeline: Allow 24-48 hours after initial setup for data to flow correctly through both platforms. Some data may appear delayed initially.


Troubleshooting

Common issues and solutions when using Facebook SDK and Singular SDK together.

Common Issues

Duplicate Events in Facebook
#

Symptoms

  • Event counts in Facebook double expected values
  • Same event appears multiple times with identical timestamps
  • Facebook campaign optimization affected by inflated metrics

Cause

Facebook SDK automatic event logging not disabled, causing both Facebook SDK and Singular SDK to send same events to Facebook platform.


Solution

  1. Verify FacebookAutoLogAppEventsEnabled set to false in iOS Info.plist
  2. Verify com.facebook.sdk.AutoLogAppEventsEnabled set to false in Android AndroidManifest.xml
  3. Clean and rebuild app to ensure configuration applied
  4. Monitor Facebook Events Manager for 24 hours to confirm issue resolved
Missing Facebook Attribution in Singular
#

Symptoms

  • Facebook installs not appearing in Singular reports
  • Installs attributed to Organic instead of Facebook campaigns
  • Campaign data missing in Singular analytics

Cause

Facebook not configured as attribution partner in Singular platform or Facebook App ID missing/incorrect.


Solution

  1. Navigate to Singular → Attribution → Partner Configuration and search for Facebook
  2. Verify Facebook App ID entered correctly
  3. Confirm Facebook integration enabled and active
  4. Check attribution window settings match campaign requirements
  5. Review Facebook Ads Attribution Integration guide for complete setup
Facebook Features Not Working
#

Symptoms

  • Facebook Login fails or returns errors
  • Facebook Share button not functioning
  • Facebook SDK features unavailable in app

Cause

Facebook SDK not properly initialized or configured despite automatic event logging being disabled.


Solution

  1. Verify Facebook SDK initialized correctly in app (disabling automatic logging does not affect SDK initialization)
  2. Check Facebook App ID and configuration in app settings
  3. Review Facebook SDK documentation for specific feature requirements
  4. Test Facebook features independently to isolate integration issues

Note: Disabling automatic event logging affects only event tracking, not Facebook platform features like Login and Share. These features should continue working normally.


Additional Resources

Complete documentation for Facebook and Singular SDK integration.

Documentation Links

Singular Resources


Facebook Developer Resources


Support

Getting Help

For additional assistance with Facebook and Singular SDK integration, contact Singular Support or consult with your Customer Success Manager.