Your SlideShare is downloading. ×
Beyond the App: Sweet Custom Reporting Techniques
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Beyond the App: Sweet Custom Reporting Techniques

386
views

Published on

Experienced Bronto users know that there is a tremendous amount of data that Bronto collects to track email deliveries, opens and clicks, order conversions, etc., but all of this information is not …

Experienced Bronto users know that there is a tremendous amount of data that Bronto collects to track email deliveries, opens and clicks, order conversions, etc., but all of this information is not always easily accessible from the user interface. While Bronto is working hard on new reporting features that will make this data more manageable and actionable, there is already a lot you can do for reporting via the Bronto API. In this session, we will show you how you can utilize the Bronto API to create a custom reporting solution to meet your reporting needs. We will also take a sneak peak at some of the new reporting features coming soon to the Bronto Marketing Platform.


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
386
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Beyond the AppSweet Custom Reporting Techniques
  • 2. AgendaContact Export ReportContact Activity ReportMost Useful API Calls for ReportingRevenue Reporting IdeasBest PracticesQuestions
  • 3. Contact Export ReportIn the app and beyond…
  • 4. Contact Export Report
  • 5. Contact Activity ReportComing soon to an app near you…and beyond.
  • 6. Contact Activity Report
  • 7. Contact Activity Report
  • 8. Contact Activity Report
  • 9. Most Useful API Calls for ReportingREAD ALL THE THINGS!
  • 10. Most Useful API Calls for ReportingGet The Objects•  readFields•  readLists•  readDeliveryGroups•  readMessagesGet The Data•  readContacts•  readConversions•  readDeliveries
  • 11. Revenue Reporting IdeasFollow the Money
  • 12. Revenue Reporting IdeasThe readDeliveries Call Returns RevenueRevenue Per Email•  RPE = Total Email Revenue / Total DeliveredRevenue Per Month and Year (MTM and YOY)Campaigns as a Percentage of Total Revenue•  Leverage Delivery Groups for the campaigns•  Welcome Series•  Abandoned Cart Series•  The readDeliveryGroups call will return its deliveriesReturn on Investment – Compare Against Your CPM
  • 13. Best PracticesTips and Tricks
  • 14. Best PracticesAdding a Contact to a ListWhen updating lists for a contact, you must read the contactscurrent list and append the new list before saving or it will overwritethe contacts current list(s).Setting Contact StatusThe only way to set a contacts status in Bronto is through anaddContacts or updateContacts call.API Timeout IssuesIf you are having timeout issues reading from the API, change theamount of records returns from 5000 to 1000.SoapUI is Your FriendSoapUI is a free and open source tool that is great to do functionaltesting with the Bronto API.
  • 15. Questions?Thank You!
  • 16. Appendix
  • 17. readContactsOverviewThe readContacts function attempts to return contacts that match all of thegiven filters. The specified attributes of the contacts are returned for eachmatching contact.Parametersfilter, includeLists, fields, pageNumber, includeSMSKeywordsFiltertype, email, mobileNumber, id, status, created, modified, listId, segmentId,msgPref, source, customSource
  • 18. readContacts Return ObjectName Type DescriptionId string The unique id for the contactemail string The email address assigned to the contact. The emailaddress can be used to reference a specific contactwhen using the contact functions.mobileNumber string The mobile number stored for the contact.status string The status of the contact.fields contactField Fields and corresponding field data associated with thecontact.numSends long The total number of deliveries sent to the contact.numBounces long The total number of times deliveries sent to the contactresulted in a bounce.numOpens long The total number of deliveries that were opened by thecontact.numClicks long The total number of deliveries that were clicked by thecontact.numConversions long The total number of conversions made by the contact.conversionAmount float The sum/total amount of conversions made by thecontact.
  • 19. readFieldsOverviewAttempts to return fields that match all of the given filter. The specifiedattributes of the fields are returned for each matching field.Parametersfilter, pageNumber,Filtertype, id, name
  • 20. readFields Return ObjectName Type Descriptionid string The unique id of the field.name string The internal name of the field.label string The external (public facing) name of the field.type string The type of the field: text, textarea, password, checkbox,checkboxes, radio, select, integer, currency, float anddate.visibility string The visibility selected for the field {public, private}. Publicfields are visible to you and can be made visible to yourcontacts. Private fields are visible only to you.options fieldOptionObject[] The possible options that can be set for a field if the field isa pull-down, check box, or radio button.
  • 21. readListsOverviewThe readLists function attempts to return lists that match all parameters ofthe given filter. The specific attributes of the lists are returned for eachmatching list.Filterstype, id, namePropertiesid, name, label, activeCount, status, visibility
  • 22. readLists Return ObjectName Type DescriptionId string The unique id assigned to the list.name string The internal name of the list.label string The external (customerfacing) name of the list.activeCount long The number of active contacts of currently on the list.status string The status of the list. Valid values are active, deleted, and tmp.visibility string The visibility for the list. Valid values are public and internal
  • 23. readDeliveryGroupsOverviewThe readDeliveryGroups function attempts to return a delivery group and allthe items contained in the delivery group.Filterstype, name, listByType, deliveryGroupId, deliveryId, messageGroupId,automatorIdPropertiesid, name, visibility, deliveryCount, createdDate, deliveryIds, messageRuleIds,messageIds
  • 24. readDeliveryGroups Return ObjectName Type DescriptionId string The unique id assigned to the delivery group.name String The name assigned to the delivery group.visibility string Determines if the delivery group can be viewed in theapplication. Valid values are INTERNAL and PUBLIC.deliveryCount long The total number of deliveries currently contained in thedelivery group.createdDate dateTime The date the delivery group was created.deliveryIds[] string An array of the ids for each delivery contained in thedelivery group.messageRuleIds[] string An array of the ids for each automated message rulecontained in the delivery group.messageIds[] string An array of the ids for each message contained in thedelivery group.
  • 25. readMessagesOverviewThe readMessages function attempts to return messages that match thegiven filter.Filterstype, id, name, status, messageFolderIdPropertiesid, name, status, messageFolderId, content
  • 26. readMessages Return ObjectName Type DescriptionId string The unique id assigned to the message.name string The name assigned to the message.status string The status of the message.messageFolderId long The unique id of the folder containing themessage.content messageContentObject[] An array of content objects (type, subject,content) for the message.
  • 27. readDeliveriesOverviewThe readDeliveries function attempts to return deliveries that match all of thegiven filter. A delivery is a message that has been sent to a specific set ofrecipients. Although a delivery is associated with a message, the messagescontent may have changed since the delivery was performed and soshould not be used for determining the actual content sent. Instead, thecontent that was delivered may be included in the return of this function.Filterstype, id, messageId, start, status, deliveryTypePropertiesid, start, messageId, status, type, fromEmail, fromName, replyEmail,authentication, replyTracking, messageRuleId, optin, throttle, content,recipients, fields, numSends, numDeliveries, numHardBounces,numSoftBounces, numOtherBounces, numBounces, numOpens, avgOpens,numClicks, avgClicks, numConversions, avgConversions, revenue…
  • 28. readDeliveries Return ObjectName Type DescriptionId string The unique id assigned to the delivery.start dateTime The date the delivery was scheduled to be sent.messageId string The id of the message associated with the delivery.status string Status: sent, sending, unsent, archived, skipped. tmp.type string Type: normal, test, automated, split, triggered.fromEmail string The email address used in the From Address for this delivery.fromName string The name used as the From Name for the deliveryreplyEmail string The email address used as the Reply-To Address for the delivery.More Multiple content, recipients, fields, numSends, numDeliveries,numHardBadEmail, numHardDestUnreach,numHardMessageContent, numHardBounces,numSoftBadEmail, numSoftDestUnreach,numSoftMessageContent, numSoftBounces, numOtherBouces,numBounces, uniqOpens, numOpens, avgOpens, uniqClicks,numClicks, uniqConversions, avgConversions, revenue,numSurveyResponses, numFriemdsForwards,numContactUpdates, numUnsubscribesByCompaint,numContactLoss, deliveryRate, openRate, clickRate,clickThroughRate, conversionRate, bouceRate, complaintRate,contactLossRate, numSocialShares...
  • 29. readConversionsOverviewThe readConversions function attempts to return conversions that match allof the given filter. You can return the conversions recorded for individualcontacts or deliveries depending on your needs.FilterscontactId, deliveryId, id, orderIdPropertiesId, contactId, email, orderId, item, description, quantity, amount, orderTotal,createdDate, deliveryId, messageId, automatorId, listId, segmentId,deliveryType, tid
  • 30. readConversions Return ObjectName Type DescriptionId string The unique id assigned to the conversion.contactId string The unique id assigned to the contact you want to associate aconversion with.email string The email address of the conversion contact.orderId string The order identifier. This should be unique per order and will beused to prevent duplicate orders.item string The SKU of the line item. Certain item codes are reserved forspecial use: subtotal, taxes, shipping, and total.description string The description of the line item.quantity int The unit count of the line item.amount decimal The line item total amount of the line item.orderTotal int The total number of orders madecreatedDate dateTime The date and time of the conversion. If no date/time isprovided, then the system will timestamp the record.deliveryId string The unique id assigned to a delivery you want to associate aconversion with.More Multiple messageId, automatorId, listId, segmentId, deliveryType, tid
  • 31. Leveraging Excel Pivot Tables and GraphsNumber of Contacts by StatusactiveonboardingunsubCount of Status  active   13  onboarding   61  unsub   2  Grand Total   76  
  • 32. Leveraging Excel Pivot Tables and GraphsActivity by Contact Create Date0246810121416182012 May Jul Aug Sep OctContact Activity DateSum of SentSum of OpenedSum of ClickedSent   Opened   Clicked  May   11   6   0  Jul   13   7   6  Aug   15   15   10  Sep   10   6   1  Oct   16   16   8  
  • 33. Leveraging Excel Pivot Tables and GraphsSum of Total Revenue by Open Rate$21,622$25,535$2,323$3,930$107,0790253338100OpenRate (%)TotalRevenue  Count of EmailAddress  0   $21,622   55  25   $25,535   1  33   $2,323   1  38   $3,930   1  100   $107,079   17