Managing Campaigns with Singular: FAQ for Attribution Partners

Welcome, partner! This article will help you get started running campaigns for advertisers who use Singular as their MMP.

Learn how to understand and test Singular tracking links, view campaign data, and troubleshoot potential issues.

If you are not integrated with Singular's attribution service yet, see Integrating with Singular Attribution FAQ (Partners).

 

I've finished integrating with Singular. What happens next?

Once you are integrated with Singular:

  1. Advertisers can generate tracking links in Singular to use in their campaigns with you. The advertisers will share these tracking links with you so you can embed them in the ads you serve.
  2. Advertisers will set up postbacks to be sent to your server in real time to notify you about conversions and in-app events. Use these postbacks for billing purposes as well as campaign optimization.

We recommend that you test tracking links before using them in live campaigns. This way, you'll be able to see if you receive postbacks properly.

To learn more about Singular's attribution methodology, see:

Tip: As discussed during the integration process, Singular tracking links include macros for campaign ID, campaign name, platform, and more. Your server should automatically replace the macros with real values as you are serving the ads. This way, the advertiser can get valuable information about ad clicks/views and corresponding conversions.

For a reminder about what information can be passed through tracking links, see Tracking Link Parameters and Report Dimensions.

This information can also get passed back to you in postbacks. For a reminder about what information can be included in postbacks, see Postback Macros and Passthrough Parameters.

How do I access data about the advertisers and their campaigns?

Singular operates a Partner Portal as a free service to our partners. The portal lets you see the same data that the advertiser sees (with some limitations to protect the advertiser's privacy). 

To get access to the portal, ask Singular Support. The team will send you an NDA, and once you sign it you will receive credentials to access the portal.

Before you can run reports, there needs to be some impression/click/install data recorded by Singular from your tracking links.

For more information, see Using the Partner Portal.

Note:

  • If you are not comfortable signing the NDA, it will not stop you from running campaigns with the advertiser. It is not a requirement for integration. However, we will not be able to grant you access to the portal.
  • The NDA cannot be changed/edited.
  • Do not sign up for a free trial on the Singular website. A trial account is for Singular customers, not partners.

How can I test an advertiser's tracking link before using it in a live campaign?

After the advertiser sends you the tracking link they generated in Singular, you should test it to make sure you receive postbacks properly before using the link in a live campaign. 

To test the link, follow the instructions in How to Test a Tracking Link.

Tip: A Singular tracking link may look as follows: https://singularassist.sng.link/D59c0/tpa9&aifa={google_advertising_id}&idfa={idfa}&cl={click_id}&pcid={campaign_id}&pcn={campaign_name}&pshid={publisher_id}&psn={publisher_site_name}&psid={publisher_site_id}&pcrid={creative_id}&pcrn={publisher_creative_name}

As discussed with you during the integration process, the values in {curly braces} are macros that should be replaced with actual values by your server when serving the ad.

What should I do if the tracking link doesn't work/I'm not receiving a postback?

Step 1: Double-Check the Testing Process

If you followed the instructions in How to Test a Tracking Link and did not receive an install postback, double-check for the following common mistakes:

  • Does the tracking link include macros? Macros are the parameter values inside the link. They are usually surrounded by {curly braces} (but may have a different syntax, depending on your integration). In a live campaign, your server will replace the macros automatically with real values such as the campaign ID, campaign name, platform, etc., when serving the ad. For testing purposes, you should manually replace the macros with real values to enable the Singular tracker to perform attribution properly.
  • Did you reset the advertising ID on the test device? Singular triggers the install attribution process only when the app is opened from a device with a new advertising ID (AIFA or IDFA). To simulate an install, you have to reset the device advertising ID, and only then click the tracking link and install the app.
  • Did you insert the device ID into the tracking link? Before clicking on the link to test it, it is important to replace the device ID macro with the actual device ID, to simulate the process where an end-user clicks an ad and then install the app from the same device. For example, instead of &aifa={google_advertising_id}, you should have something like &aifa=a565f67b-1448-4da3-b60d-79bc6f49ae5f
  • Did you insert the click ID into the tracking link? If you recognize postbacks based on click ID, make sure to replace the relevant macro in the tracking link with a click ID. Otherwise, Singular can't include a click ID in the postback.

Step 2: Check for Technical and Configuration Issues

If the tracking link still doesn't work, check the following potential issues:

  • Is your server able to receive postbacks from Singular? First, check if Singular sent the postback by downloading the postback logs in the Singular Partner Portal (see How do I use the Partner Portal to view user-level (not aggregated) data?. Check the values in the "Postback HTTP Body", "Response HTTP Code", and "Response HTTP Body" columns to pinpoint the source of the issue.
  • Has the advertiser set up postbacks properly for you? Make sure the advertiser has set up postbacks correctly in the Partner Configuration page. Reach out to your contact at the advertiser to do the required configuration.
  • Was your test install flagged by Singular's fraud protection mechanism? The install might have been flagged by custom fraud rules that the advertiser has configured. Reach out to the advertiser and ask them to check for rejected installs (under Fraud Prevention > Rejected Report).

Step 3: Contact Singular

If you cannot get the tracking link to work, reach out to Singular Support. Be sure to send the advertising ID of your test device so we can check our database for activity originating from the device.

How do I use the Partner Portal to track the performance of live campaigns?

See Using the Partner Portal to learn how to view aggregate campaign performance data. For more details, see the Reports FAQ (note that this is documentation for Singular customers and not all the features mentioned in the FAQ are available to Singular partners).

Note that the data in the Reports page takes a few hours to refresh. Do not try to use it for testing to view an install or event you just triggered. Instead, use the postbacks that are sent to your server in real time.

Tip: Viewing Data for In-App Events

To view metrics for in-app events, select one or more custom events and a cohort period (see What are cohort metrics and cohort periods?).

  • You can only see data for events for which the advertiser has configured postbacks for you. 
  • To select the cohort period, you can go to Attribution > Partner Configuration and see what lookback window has been set up for the event postback. Use the nearest available cohort period in Reports.

Why are some in-app events missing in the Reports page?

You can only see data for events for which the advertiser has configured postbacks for you. 

When an advertiser defines an event in Singular to start getting aggregate data about it, they first map the event to one or more events sent by the Singular SDK. You can only see events in the Partner Portal if all the mapped SDK events have postbacks configured for you.

If you are missing an event, ask the advertiser to either:

  • Go to Attribution > Partner Configuration and enable postbacks for all the SDK events that the event is based on;
  • Or, go to Settings > Events and create a new event for you that is only mapped to the SDK event(s) for which you are receiving postbacks.

The advertiser may not be able to set up an event for you (e.g., because they have reached the maximum number of events). In that case, you should rely on the postbacks you receive or download a log of postbacks sent by Singular by going to Attribution > Export Logs > Postbacks.

Why doesn't the data in Reports match the postbacks I received?

You should only use Reports for indications of trends. The data can differ from the postbacks you received for several reasons:

  • Reports only show conversions and in-app events attributed to you. Postbacks may be sent for unattributed conversions and events as well. To see your attributed data, filter the postbacks in your BI system, or download postback logs from Singular by going to the Partner Portal and selecting Attribution > Export Logs > Postbacks.
  • You may not have received all the postbacks sent by Singular because of a technical error at your end. When postbacks return an error, Singular retries sending them five more times (1, 5, 15, 30, and 60 minutes after the original send).
  • In Reports, in-app events are aggregated based on the install date cohort. In contrast, event postbacks can have a lookback window based on the install date, click date, or none at all. If the advertiser has set the lookback window to None or Click, the postbacks will not match the Reports data.

    Postbacks_Lookback.png

  • The cohort periods available in Reports are one day, seven days, 15 days, or 30 days. The event postback lookback window is available in increments of 1 day (i.e., it can be set to 2 days, 3 days, etc.). To see the data in reports, use the nearest available cohort period.
  • If an advertiser has set up an event as "unique" in the Singular web app, but the SDK event can be triggered multiple times, the postbacks will not match the Reports data. For more information, see What is a "unique event"?

Note: In Reports, you can select the cohort period "Actual" to get non-cohort data, i.e., data aggregated based on the actual date of the event rather than the install cohort (see What are cohort metrics and cohort periods?). "Actual" data is not available for events defined as "unique".

How do I use the Partner Portal to view user-level (not aggregated) data?

Singular's raw, user-level logs for clicks, conversions, and postbacks are the best way to validate other information you get from Singular.

To download these logs, in the Partner Portal, go to Attribution > Export Logs, select the type of log you want to download, and select which fields you want to see from the list.

Note: 

  • You can only download data for up to 7 days back. The logs provide data for up to 60 minutes ago,
  • If you need data about Singular's fraud protection decisions (and are not receiving fraud postbacks), ask the advertiser to download and share the fraud logs with you. Singular Support cannot share this data over a support ticket without consent from the advertiser. 

For more information, see the Export Logs and User-Level Data FAQ (note that this article is for Singular customers, and not all features mentioned in it may be available to partners).

Some tips to help you get started:

  • Conversion logs include user-level data for install and re-engagements only (no post-install, in-app events). Use them to analyze attribution data.
  • Postback logs include all the postbacks sent to your servers. Use them to analyze postback data and troubleshoot postback issues.
  • When downloading postback logs, make sure you include the Response HTTP Code and Response HTTP Body fields, which tell you if the postback was received properly (Code = 200) and, if not, what the problem was.
  • See the Export Logs and User-Level Data FAQ for descriptions of the fields you can include in each type of log.
  • The timestamp fields, such as touchpoint__timestamp, are in the time zone configured in the advertiser's account. Use the Timezone field to find out what that time zone is.
  • Don't forget to include the Device ID field to get accurate user-level data.
  • To keep down the log file size, filter the data as much as possible by country, event, and any other relevant filter. Also, narrow down the data range and select only the necessary fields.

What can I use user-level data logs for?

1. Validate aggregate data in Singular Reports

If there is a sudden change in your conversions/in-app events, you can download the appropriate log to double-check the data. If the data in the logs matches the reports, the data in the reports is accurate. Otherwise, there is a delay in the reports. Note that the reports are updated every few hours, so they are less fresh than the logs.

2. Validate Postbacks sent to your server

If you see (or suspect) you are not receiving some postbacks, download the postback logs. These logs include all the postbacks that were sent to you by Singular. If a postback was received propery by your system, the Response HTTP Code field shows "200". For more information, see What should I do if the tracking link doesn't work/I'm not receiving a postback?

What fields should I include in the logs?

1. For validating aggregate installs in Reports by Source and Campaign:

We recommend pulling the data for the following fields to see attributed conversions:

Fields_Conversions.png

2. For validating received postbacks or for invoicing:

If you have seen a change in the postbacks being received and want to validate with Singular’s data OR if your billing with an advertiser is based on the number of installs or event postbacks that Singular has sent to them during the period, we recommend pulling the data for the following fields:

Fields_Postbacks.png

Fields_Postbacks2.png

Note: 

  • "Partner" - the network to which the event was attributed.
  • "Postback Recipient" - the partner that received the postback (whether or not the event was attributed to that partner).
  • "Is Attributed" - shows "Y" if the Postback Recipient is the partner to which the event was attributed, "N" otherwise. If the value is "N", you can look in the Partner field to see which partner the event was attributed to.
Was this article helpful?