What is difference between spend and social_spend in Facebook Ads API? - facebook-ads-api

Working with the Facebook Marketing API - https://developers.facebook.com/docs/marketing-api/insights/fields/v2.7
What is the difference between spend and social_spend?
I assume that spend would be total, and social spend out be a subset of that spend. I have search, and read and googled and can't find a straight answer.

You are correct in that social_spend is a subset of 'spend'.
'spend' is the total you have spent on the object you're querying.
social_spend is the subset of that where the budget went towards stories due to people liking/commenting/sharing on the object. For example, you may have seen a video on your news feed that only showed up because one of your friends liked it. The social_spend by the owner of that video would increase.

Related

What can end users do to get a practial understanding of how an algorithm of a specific app works?

I sometimes hear people talking about the "infamous" Youtube algorithm that decides which videos to feature in trends or the local start page of Youtube.
Similarly, I've heard discussions about the ranking and matching algorithms of the dating app Tinder, which also seem to be shrouded in mystery, at least for people not directly involved in programming the app.
Those are just two examples, the principle is applicable to a wide range of similar apps/services.
There are obviously ways to influence an algorithm in one's favor, online marketing companies do this with rankings in Google searches, multi channel networks do this with Youtube channels, and Tinder allows users to buy subscriptions.
I, as a standard end user want to make sure I am using the the apps as efficiently as possible without using paid subscriptions, or monetary services in general, for that matter.
In order to do this I feel like I need at least some understanding of the underlying algorithms of those apps.
What is good way to gather such information?

How to implement personalized feed ranking?

I have an app that aggregates various sports content (news articles, videos, discussions from users, tweets) and I'm currently working on having it so that it'll display relevant content to the users. Each post has a like button so I'm using that to determine what's popular. I'm using the reddit algorithm to have it sorted on popularity but also factor in time. However, my problem is that I want to make it more personalized for each user. Each user should see more content based on what they like. I have several factors I'm measuring:
- How many of each content they watch/click on? Ex: 60% videos and 40% articles
- What teams/players they like? If a news is about a team they like, it should be weighed more heavily
- What sport they like more? Users can follow several sports
What I'm currently doing:
For each of the factors listed above, I'll increase the popularity score by X of an article. Ex: user likes videos 70% than other content. I'll increase the score of videos by 70%.
I'm looking to see if there's better ways to do this? I've been told machine learning would be a good way but I wanted to see if there are any alternatives out there.
It sounds like what your doing is a great place to start with personalizing your users feeds.
Ranking based on popularity metrics (likes, comments, etc), recency, and in you case content type is the basis of the EdgeRank algorithm that Facebook used to use.
There are a lot of metrics that you can apply to try and boost engagement. Something
user liked post from team x, y times, so boost activity in feed by log(x) if post if is from y, boost activity if it’s newer, boost activity if it’s popular, etc… You can start to see that these EdgeRank algorithms can get a bit unwieldy rather quickly the more metrics you track. Also all the hyper-parameters that you set tend to be fixed for each user, which won’t end up with the ideal ranking algorithm for every user. Which is where machine learning techniques can come into play.
The main class of algorithms that deal with this sort of thing are often called Learning to Rank, and can be on a high level generalized into 3 categories. Collaborative filtering techniques, content based techniques, and hybrid techniques (blend of the first two)
In you case with a feed that most likely gets updated fairly frequently with new items, I would take a look at content based methods. Typically these algorithms are optimized around engagement metrics such as likelihood that the user is going to click, view, comment, or like an activity within their feed.
A little bit of self-promotion: I wrote a couple blog posts that cover some of this that you may find interesting.
https://getstream.io/blog/instagram-discovery-engine-tutorial/
https://getstream.io/blog/beyond-edgerank-personalized-news-feeds/
This can be a lot a lot to take on, so you could also take a look at using a 3rd party service like Stream (disclaimer, I do work there) who helps developers build scalable, personalized feeds.

Ranked Feed Algorithm

I'm building a sports newsfeed for an app and I'd like it to be sorted on popularity as well as chronologically. I've implemented the sorting using the open-source reddit algorithm (my app has likes for each post in the newsfeed). So far I've tested it and it seems to be working well but there's one main problem I've encountered: News about popular sports always show up above news from other sports. Example: My app has 100,000 basketball fans and 1,000 soccer fans. A big news about soccer comes out. It'll still have less likes than the other regular daily basketball news. How can I resolve this issue? One possible solution I considered is feeding the reddit algorithm the % of all fans that liked a certain post.
I suggest that you normalize the percentage across your fan base. "Popularity" should measure not only percentage of up-votes, but relative percentage within the fan base.
For each article, count the up-votes. Next, convert this to a Z-score: how many standard deviations above/below the mean this article was rated, within the fan base for that sport. Use this in place of the quantity of votes.

Google Analytics High Session Rate vs. Low Avg. Session Duration

My department has installed google analytics on our companies website and none of us are exactly experts on understanding why the data is the way it is.
Anyways, our company is fairly large, but I wouldn't say we are exactly a well known company. We provide internet and Video on Demand to Hotels worldwide. Anyways, as of right now, since I have installed our code last month, we have a total session number of over 78,000. Our average session duration is only 24 seconds, with an average page view per visitor at 1.18 and a bounce rate of 91%.
I don't doubt the session average time. Me and my co-workers are just a little confused as to how with that many visitors, we are consistently across the board getting such a fairly small session duration and a high bounce rate. Could visitors possibly just come to our website, look for our phone number and than leave the site? I'm just trying to find a way to reduce the bounce rate and hopefully increase the session duration average. Or is it possible to add a filter that will exclude visits to the site that are less than 30 seconds, or something like that? I apologize for asking such fairly basic questions I'm sure. I am trying to get up to speed and familiarize myself with how this all works. Just thought I'd maybe ask and see if I am missing something important. Any advice would be greatly appreciated. Thank you!
Its hard to tell why your metrics are so low across the board. Your referral traffic could be to blame here - possibly bad ad copy from adwords or bing, which is making users think they're going to a different page. You can always create a filter by the acquisition, and where the clicks and sessions are coming from. From there it'll be easier to see which source of traffic is to blame, and also how you can improve your site overall for traffic optimization and user friendliness. For more info, reach us at RLCppc.com on the matter. hope that answers your question

Total POIs in a country or for every category

Not really a technical question but they don't have other means of contact apart from https://groups.google.com/group/google-places-api and SO.
I'd like to get the total count of all POIs or the total amount of POIs in a category on a country. Is this possible in the API (since it always returns 20 results at a time)? if not, is there a google places support email to ask them about certain questions?
As mentioned on Places API Google Group:
Google does not disclose such information. However, If you are
familiar with a few places and locations in Thailand, you or your
client could simply perform a few searched on maps.google.com and
compare the results with your own knowledge to get a general
understanding of how precise or complete the data is.

Resources