Social Media Paid Advertising Adventures

Facebook Paid Advertising Adventures

First Facebook Advertising Adventure - promoting external websites
revised 1 May 2018

An interesting article on paid Facebook advertising led to a two-month experiment, 5 Nov 2017 to 8 Jan 2018. I created a Facebook page to describe the seven websites related to political scrapbook and receive occasional posts about them.

The original advertising target audience was California adults who Facebook considers interested in the Democratic Party. Due to beginner configuration errors, from Nov 5-10 some ads went to all adults, for which I apologize; people who aren't interested in politics REALLY don't want to see political ads. As for people who Facebook considers to be interested in the Democratic Party but really aren't and REALLY don't want to see political ads - good luck trying to change how Facebook sees you - I can't help on that. The audience was limited to desktop devices; smart phones just don't have a big enough screen to make reading long text essays bearable.

Access to my account was suspended for several days in mid-December (see below) but when I could get back on, I changed the target audience to all US women aged 40-64 interested in the Democratic Party, in an experiment to see if the signal-to-noise ratio would improve. Compared to before, there was less vulgarity and off-topic commentary, but not as much less as one might have hoped. This target audience amounted to about 4,000,000 users.

Then on the last day, January 7, I revised the audience again, to all adults in California interested in the Democratic Party, so see if that would make a discernible change in tone of the comments. This target audience amounted to about 2,000,000 users.

As for the political-scrapbook related websites:

Website Count
3 Nov
8 Jan
15 Jan
1 Feb
1 Apr
1 May
4 Jun
1 Jul
29 Nov
2 Jan
4 Jan
click 31 Oct 13 523 535 542 586 616 673 694 937 1320 1714 9 Nov 439 395 141 31 Oct 32 916 930 939 975 1003 1039 1055 1142 1350 1535 14 Nov 701 654 86 7 Jun 94 1334 1353 1381 1434 1483 1516 1538 1648 1869 2042 3 Nov 936 835 66 8 Aug 33 712 720 730 783 831 871 893 965 1185 1322 3 Nov 613 565 101 3 Nov 19 544 551 557 593 633 655 672 720 892 1073 9 Nov 520 451 133 5 Dec 0 1145 1156 1172 1214 1238 1257 1269 1352 1555 1733 5 Dec 910 684 77 5 Dec 0 428 434 443 483 505 526 538 621 836 1032 20 Dec 356 334 122
5 Nov 0
9 Nov 555 - 128

As of the end of the ad campaign on 8 January, the campaign had reached 219,000 people, making 781,000 impressions. The data from tells you what they counted as click-throughs on ads. Count refers to results from Count.cgi, a simple website counter. It counts clicks from all sources, including search bots, but it's supposed to count multiple clicks from the same IP address only once.

The last line in the table is Facebook Like/Follow counts for the politicalscrapbooknet page. Facebook claims 555 likes were in response to advertising the page itself, at a cost of $1.28 per like. The other likes came from family, friends, and referrals. It was hard to move far from the Kushner Number of the Beast, 666, until I began the second advertising experiment, boosting posts.

Facebook advertising is an expensive hobby experiment, but helpful perhaps to persons considering social media for political advocacy. It's certainly not worthwhile for the quality of online discussion as a whole; one has to hope that, through the noise, useful information gets through to those that are looking for it. Without ads, it will be interesting to see how many people find their way to the Facebook page by luck or search or referral. As soon as paid advertising ceased, comments stopped, signal and noise alike. I continue to post items from time to time but I really need to move on to more productive activities than amateur political commentary.

There is nothing to buy or do on these websites, but if you find them worth reading, then please pass them on to others who might find them helpful.

The real cost-benefit analysis would be: how many people, responding to the advertising, were motivated to write a letter to a legislator, or to support one of the organizations devoted to change mentioned in the websites, either with money or time? What was the cost per effective response? Facebook can't tell you that.

Tech Geek Aside on Count.cgi

I set up my counter URL's a certain way that I copied from somewhere else over 20 years ago:

 IMG SRC="/cgi-bin/Count.cgi?dd=D|ft=3|df=facebook" align=absmiddle 

Lately I noticed that the Count.cgi numbers just didn't seem to be keeping up with the size of the Apache webserver logs. Wondering about that, I looked in the error logs, and found a number of error entries like

[Sat Apr 07 08:23:00 2018] [error] [client] Unable to open file: /var/local/wwwcount/digits/D%7Cft=3%7Cdf=facebook/strip.gif

As it happens, is, part of the Amazon cloud, that is used as a web crawler leaving logs like - - [07/Apr/2018:08:23:00 -0700] "GET /cgi-bin/Count.cgi?dd=D%7Cft=3%7Cdf=facebook HTTP/1.1" 200 6712 "-" "MauiBot ("

But other web crawlers and human users did not seem to have any trouble finding the digits file they needed. Going back over the Count.cgi documentation, I stumbled on something obscure in the discussion of setting up counter URL's:

In the query string, you can use the options described in the table below. 
The options can be separated by a | or a &. You can use either one or 
combination of both but I prefer to use & as some browser may not like |.

Could this be the missing hint? I changed all my counter invocations to the form

 IMG SRC="/cgi-bin/Count.cgi?dd=D&ft=3&df=facebook" align=absmiddle 

and so far I haven't had any more of those "Unable to open file: ... /strip.gif" errors.
Tech Geek Aside on wp-login.php botnet

It looks as if there was a surprising increase in Count.cgi from 1 Feb to 1 Apr. Was somebody virally spreading my URL's because they were so impressed with the brilliant political analysis? The answer is yes and no; there was indeed a viral upsurge of interest, but oddly enough most of the internet addresses were from outside the US. Why would foreigners suddenly care about my thoughts on American politics? It turns out the sudden interest was botnet attacks on wp-login.php. I don't use WordPress or any other php scripts - and as my web pages show, I'm a /usr/ucb/vi kind of guy anyway. So the attacks were ineffective except for adding meaningless boost to the Count.cgi numbers. My firewall blocks wp-login.php attack IP's anyway since those bots might be up to some other wickedness in the future. The upsurge in attacks and unique attacking IP's was notable after I started my Facebook ad campaign in November:

Month Attacks Unique IP's
Oct 24 15
Nov 1187 1165
Dec 4658 4549
Jan 5896 5013
Feb 4228 3859
Mar 41001 10774
Apr 15954 5307
May 8962 4256
Jun 3153 3071

The surge in March - two months after advertising ended in January - is puzzling. I had to modify my homebrew malware filtering to automatically filter out wp-login.php attempts without human intervention, so I could inspect the more interesting intrusion attempts manually.

Second Facebook Advertising Adventure - boosting posts
revised 1 May 2018 is the Facebook version of the website. The Posts section contains bite-size portions (some bigger bites than others) of topics in The Facebook page has had its ups and downs, as explained below, which is why there are big gaps in posts and comments.

As an experiment, I responded to Facebook's invitation to "boost" (advertise) posts by authorizing $20 each for several posts over a week's time. Here are the results; entries such as 5/6 April mean posted 5 April, boosted 6 April; 10/9 mean that 10 was the total number and 9 was the number Facebook attributes to the paid boost; all are set to go off boost on 14 April 2018: The target audience was US women aged 30-64 interested in the Democratic Party: 13,000,000 users.

Here the boost experiment posts are listed here in reverse chronological order:

For the convenience of people who don't touch Facebook or want to quickly scan multiple posts, the links in the right column of the following table are to plain text copies of the Facebook posts. The links in the left column are to the actual Facebook posts.

Title Post
Reach Like Love Haha Wow Sad Angry Comments Shares Clicks Hide Hideall Spam Ratio Score
Personal Change Leading to Social Change 2018-04-13
2 3
9 9
Local Journalism - ignore it and it will go away 2018-04-12
6 1 6
24 7
You shall not press down upon the brow of labor this crown 2018-04-09
3 1
1 50
1 1 23 8
Trump Administration bravely defends your right to make 2018-04-09
128 2 8 97 11
7 8
Don't make it easier for the Republicans to retain control 2018-04-09
3 2 1 16 26
1 7 9
Middle America Reboots Democracy 2018-04-09
26 1 22
9 8
Reproductive Rights, #MeToo, and the 2018 primaries 2018-04-07
3 1 12
13 9
Civil Forfeiture - guilty until you are proven innocent 2018-04-05
1 1 1 4 14 3 18
1 8 8
How much would you sell your personal information for? 2018-04-05
1 4 2
11 7
Middle America Reboots Democracy - Putnam and Skocpol 2018-04-03
2 28
13 -
What Happens When You Fast-Track a Tax Bill? 2018-04-03
1 1 4 37 11
1 1 9 9
#MeToo - The Political Issue of the Century? 2018-04-01
44 1 8
7 6
The Most ... Candidate WHO CAN WIN 2018-03-30
9 1 3
9 8
Consistency of Republican Word and Deed 2018-03-30
12 1 1
6 9
Who decides who is elected to Congress in 2018? 2017-12-28
17 2 5
2 288
8 10

One lesson I infer from the data so far is that sensational and polemical posts get more Facebook readership than thoughtful and educational ones.

The experiment was encouraging enough that I started boosting some more posts after April 15, until Facebook revised its political advertising policies effective May 22 for new boosts and June 4 for already-running ones.

Third Facebook Advertising Adventure - getting locked out
revised 29 May 2018

Your Facebook page is now read-only - security

One of the unexpected benefits of being a Facebook advertiser is that one can be locked out of his account for several days at a time. You and everybody else can read existing content, but you can't change anything. This has happened to politicalscrapbooknet several times over two months, most notably for over a week while the tax bill was receiving its final hacks of passage in Congress.

Facebook notifies you that (unspecified) unusual activity in your account raises (unspecified) security issues, and you need to send a photo for verification (how this helps is unspecified), but you will be notified when the issue is resolved (how long this might be is unspecified). During this time you are locked out of your account and can't change anything or post anything. Although they say they will let you know when the security review is complete, they don't, and you have to keep trying to log in every day until it works again. That might take a couple of days or a week or more. During that time they continue to send you cheery messages about "a lot has happened in your account since you logged in."

Your Facebook page is now disabled

On 25 Feb 2018, a family member told me that my politicalscrapbooknet page could no longer be found. Nobody could read it and I couldn't log in. When I tried, I got:

Account Disabled
Your account has been disabled. If you have any questions or concerns, you can visit our FAQ page here.
As far as I know, I wasn't doing any of the things Facebook forbids. So I filed an appeal to find out what I did wrong. No response as of 8 March, so I submitted another appeal. Never got a response, but on 20 March, the page was visible again. One thing that might have been a factor was that I might have accidentally blocked some email from facebook. I revised my homebrew malware prevention about the time I started getting facebook updates again.

I wasn't done yet, though. When I had time, I posted some new comments and asked family members if my page and posts were visible again. They said no. A google search for clues led me to discover that the page had been set to unpublished - perhaps by Facebook while my login was disabled. There is a settings page and a Page Visibility option that had to be changed to Page Published. I did that and now the page seems to be live again. Live and learn.

Your Facebook ad is disapproved - discriminatory target

Facebook can also block your ad offering housing, employment, or credit, if it determines that you have targeted the audience in a discriminatory fashion. One of these political ads was blocked on that basis. Facebook unblocked it after I appealed. They never specified what about the ad warranted blocking nor why it turned out OK on appeal. Indeed, being political advocacy, the ad offered no housing, employment, or credit, indeed no goods or services at all. Perhaps the Facebook policy is a new response to an investigation by New York Times and ProPublica into age discrimination in employment advertising.

Your Facebook ad is disapproved - violates Advertising Policies

On 6 April, after being active for several hours, the post about fast-tracking the tax bill was disapproved for boosting. Facebook said:

Your ad wasn't approved because it doesn't follow our Advertising Policies. We don't allow ads that contain shocking, disrespectful or sensational content, including ads that depict violence or threats of violence.
How to fix: We suggest removing this type of content from your ad and/or using a different image or video.
I couldn't find anything shocking, disrespectful, sensational, or violent, so I changed "schmuck" to "wage-earner" and asked them to review it again. The next day it was approved and they were charging me again. As usual, no explanation of how it fell out of favor or how it fell back in favor.

Your Facebook ad is disapproved - improper reference to Facebook or Instagram

On 7 April, a post about Middle America Reboots Democracy was disapproved for boosting. Facebook said:

Your ad wasn't approved because it includes an improper reference to Facebook or Instagram in the text or an image of a Facebook or Instagram brand asset, which doesn't follow our Advertising Policies.
How to fix: Edit your ad to follow our brand guidelines.
I think this was the objectionable part:
A few days ago, a posting on this facebook page

 #MeToo - The Political Issue of the Century?

discussed the high-level political effect of Trumpism,
But Facebook wasn't done with that post. On 8 April, I got a message
From: "Facebook Ads Team" 
Subject: Your Ad Could Be Performing Much Better

Your ad's image contains text which is affecting its delivery. Click any
of the links below to manage your ad, and make changes to reduce the
amount of text in your ad's image to improve its performance

The following ad needs your attention
Boosted Post:
Post: "Middle America Reboots Democracy - Putnam and Skocpol"

You can find several websites that explain how to use Open Graph to tell Facebook which thumbnail to use for your site. What you can't find is a way to tell Facebook which thumbnail to use for a site that belongs to somebody else. That restriction is a recent change to fight fake news, so I applaud it, if effective. You're still allowed to add multiple thumbnails on your Facebook page, but you are not allowed to get rid of the one Facebook chose from the site itself.

I finally gave up and started a new ad with a different first URL from which Facebook extracted a different thumbnail photo which I hope is more acceptable. Perhaps the moral is: be sure the thumbnail photo is satisfactory before launching the ad.

Your Post Wasn't Boosted

Facebook thought one of my posts was doing so well it should be boosted:

Boost Your Post
Your post is performing better than 95% of other posts on your Page. Boost it now to reach even more people.
But when I tried, using the same parameters as previous posts that day:
Your Post Wasn't Boosted
Sorry, but we're having trouble boosting your post and are working to solve the problem. Please try again.
No further explanation available. Facebook's help pages suggest clearing the history from your browser. That didn't help. They also suggested a different browser, so I switched hardware, operating system, and browser to Windows 7 and Internet Explorer, and that didn't help either. I tried re-entering the text as a new post. That didn't help either. That 95% rating seemed to be the kiss of death. Then the same thing happened with another post that wasn't marked as performing above 95%. I tried to boost it and got the same vague error message. Other posts earned boost recommendations from Facebook, but when I tried boosting those and some others, Facebook would not boost them.

I complained on the online help center, and eventually received the following words of comfort:

We received your report and appreciate your patience as we work to fix technical problems on Facebook. Though we can't update everyone who submits a report, we're using your feedback to improve the Facebook experience for everyone.
Translation: we won't tell you what's wrong and we might not change anything.

Some other advice from the web suggested promoting a post directly from the Ads Manager. That failed with this enlightening message:

"Page Does Not Have Domain Advertising Permission: Your Page does not have permission to run ads for the domain Reach out to the domain owner to get permission."
And indeed, it looks like the posts that can boost do not have links to the Post. So this page's posts will not boost the Post. But why couldn't Facebook say that right up front instead of suggesting that they are "working on it?"

I previously was able to boost posts with links to the Post, but that stopped around 16 April. It took a couple of weeks to stumble on the solution.

Can't Edit Boosted Post

I normally think of something I should change just after I create a post, especially if I immediately boost it. Sometimes after you boost a post, you can edit it... and sometimes you can't. While it is in review prior to approval for boosting, the Edit Post option is not display on the ... dropdown menu. After approval, sometimes you can edit, and sometimes not. Pausing the boost doesn't seem to help. In any case, if you do modify a boosted post, it will go through another review cycle.

If you're stuck, the simplest solution seems to be to cancel the boost. Then you can re-edit the post and reboost. You lose any interaction that might have occurred to the original post.

No proprietary formats

Some boosts were rejected, after a long time to review, and sometimes after being successfully boosted for several days - with a generic reminder that certain kinds of URL's aren't allowed in ads. There's a long list of reasonable restrictions - URL has to be viewable, no pop-ups, etc. - and then other restrictions such as no proprietary formats (e.g. .pdf or .doc). I removed pdf references from the posts in question and they were then successfully boosted again. These were typically academic articles providing the research informing opinions expressed in earlier citations in the post. I hadn't thought of pdf as very proprietary, and wonder why it's permitted in some boosted posts some of the time.

Low Quality or Disruptive Content

Another way that posts get rejected is for Low Quality or Disruptive Content in external pages linked in the ad. This can happen after the ad has been running for a while. In this case, the offending page seemed to be although it was hard to be sure, since Facebook's rejection doesn't specify which external link is the problem. Other posts containing Washington Examiner links have been successfully boosted. So I deleted the Washington Examiner link, and the boost was still rejected. Next I tried removing all the external links and relying on text, just to see whether that would work; it seems to have been successful. So the problem does seem to have something to do with the links, and not with words like "impeach" in the text.

Then I tried boosting the same post with no links except a link to my Facebook post that had the objectionable external links. Not only did that work, but at the same time, a lot of the other boosts that had been under review for over a week were approved. Some of them had "impeach" in the text, so that wasn't the issue. But the net result is that there are a several duplicate or near-duplicate posts on the page, on the subjects of impeachment, Pence, and income taxes.

Facebook has launched a new authorization process for political advertisers that is quite intrusive and requires giving Facebook a lot of personal information. That may be necessary to reduce Facebook's legal and political liability but it's more information than I'd trust a social media company to keep confidential, especially a Chinese one. Per the new policy, starting May 22 there were no more new unauthorized political ads, and starting June 4, existing unauthorized political ads were disabled. That's just as well for me; it's time to get back to useful productive work.

Promoting Bitcoin, binary options, or cryptocurrencies

A post on the business cycle was rejected for violating an advertising policy against promoting Bitcoin, binary options, or cryptocurrencies. As far as I could tell, the problem paragraph was

Bitcoin bubblemania might be a canary-in-a-coal-mine, reminiscent of the self-referential and self-leveraging peaks of the internet bubble of 2000 and the subprime mortgage bubble of 2008. But leverage works going down as well as going up.
So I tried editing it to
The self-referential and self-leveraging peaks of the internet bubble of 2000 and the subprime mortgage bubble of 2008 remind us that leverage works going down as well as going up.
Perhaps that did the trick; the ad was eventually approved.

Not Authorized for Ads with Political Content

Although all my ads were posted by the deadline of May 21 and not modified thereafter, a few were rejected on the basis of political content:

The error message was:
Not Authorized for Ads with Political Content
Your ad was not approved because your Page has not been authorized to run ads with political content.
What to do: Complete the authorization process.
If you've read our policies and think that we made a mistake, you can request a second review by our team.
Some ads were disabled for that reason, and then re-enabled without any action on my part. So I did nothing about these and hoped for the best.

Promoted Object Is Missing

with an error message:
Promoted Object Is Missing:
You must select an object to promote that is related to your objective, for example a Page post, website URL, or app.
Please add a promoted object and try again.
(fbtrace_id: HqktcRG/HES)
I couldn't tell what to do with those, since both ads listed multiple URL's of web pages to boost.

Server Down

Evidently Facebook's statistical services for advertisers fail from time to time:

Link Removal

Moskowitz LLP didn't appreciate links from political-scrapbook to their website, so they asked for them to be removed. They no longer seem to make an explicit point, in their radio ads or website, about consulting on the qualified business deduction and other obscurities of the new tax law.

Facebook Will Be Back Soon

Facebook went down unexpectedly with the message:

Facebook is down for required maintenance right now, but you should be able to get back on within a few minutes. In the meantime, read more about why you're seeing this message. Thanks for your patience as we improve the site.
After several hours, an investigation revealed it wasn't just me: I never found out what happened.

Then the next day, there was a different kind of error "Failed to update pinpost" with the message:

Error when trying to update the page's pin post. Please try again later.
That one didn't last as long.


Presumably all the imagined violations were first detected and punished automatically by artificial intelligence algorithms, and then my appeals had to be handled manually by humans. If so, then social media companies will have to incorporate the cost of all those post checkers and appeal judges into their business models.

After all these adventures with greater and lesser lockouts of an overtly political Facebook page, I wonder if the covertly political ones have an easier time of it.

Fourth Facebook Advertising Adventure - 2018 Election
revised 5 Nov 2018

Although I had gotten discouraged after all the foregoing, I decided belatedly that I had a civic duty to opine on the November 5 election. So I started the procedure to get authorized for political ads.

First I had to set up two-factor authentication for my account. That means whenever I want to log in to my Facebook account, after I type the password, Facebook will text a one-time numeric code to my cell phone, which I have to type into the Facebook web page.

Then I had to send them photos of the front and back of my driver's license.

Then they mailed (us post office paper mail) another authorization code to my residence address; a post office box was not acceptable. That took about a week.

Then I had to tell them how to sign the Paid-for line on political adds; I just used my name.

After doing all that, I could start trying to post political ads. My first was rejected for having Washington Post links; in a big improvement since May, the error message was immediate and explicit. Another was rejected because a link was to a website deemed low-quality; I never figured out what the criterion for that really was. A third was rejected because a link was inaccessible or low-quality or had some undesirable content issue. I couldn't figure it out and appealed, and then they sent me a screen shot showing an unsuccessful URL. It turns out I had misspelled a domain name - not the primary landing URL linked to the post, but a secondary one. Once I knew to look for I could create a new post and submit it for boosting. Generally approval happens within a few hours; disapproval often takes longer.

It still is not possible to edit a boosted post, even if it is hung up in approval, nor is it possible to change the landing link or its thumbnail from whatever Facebook found at first. Instead you have to create a whole new post and try to boost that. Thus there were several similar but slightly different posts created while I debugged the process, which might have annoyed people who followed the Facebook politicalscrapbooknet page.

I posted eight ads. Since the goal, right before the election, was to sway undecideds, I did not address persons interested in the Republican or Democratic Parties, and instead the target audiences included persons interested in independent politicians and the Green Party, and sometimes the Libertarian Party.

Title Post
Reach Like Love Haha Wow Sad Angry Comments Shares Clicks Hide Hideall Spam Ratio Score
MS runoff - very fine people, on both sides? 2018-11-23
46 3 1 1 1 14 78
3 10 9
MS runoff - it's not just about Trump 2018-11-21
66 12 5 2 20 87
1 6 9
Evolution of Republican Identity - for MS runoff voters 2018-11-18
81 9 1 1 4 16
1 7 8
Words from Washington to McCain -for MS runoff voters 2018-11-18
68 14 1 4 51
1 7 8
There is no immigration strategy in the middle 2018-11-05
70 2 1 2 1 16 107
1 2 14 8
A Cross of Gilt 2018-11-05
89 5 2 1 54 28
15 10
Wrong rules the land and waiting Justice sleeps 2018-11-05
73 8 14
1 1 38 7
Should leaders be role models for youth? 2018-11-04
282 7 4 13 34 96 310
3 2 7 9
Political Scrapbook Related Websites 2018-11-04
6 1 86
1 96 5
Why are these Republicans voting for Democrats? 2018-11-02
536 50 6 7 9 14 269
1 4 1 6 9
From Washington's Farewell Address - 2018-10-30
58 2 10
37 8
Conversion of a party of ideas to a cult of personality - 2018-10-27
316 4 28 10 37 40 330
6 4 11 8

Facebook Advertising Futures
revised 10 April 2018

The lockout experiences described above probably reflect fast automatic blocking by artificial algorithms and then a slower human appeals process that involves somebody somewhere actually looking at the content and deciding if it's OK. It's hard to imagine any other method of blocking harmful content and fake contributors, but it tends to undermine the business proposition of social media by making the human labor content a significant part of the cost to be borne by advertisers - or users.

Political Advertising on Social Media
revised 14 November 2019

Twitter announced that it would reject all political and issue advertising starting 22 Nov 2019. The issues of censorship vs suppression of falsehoods just seem intractable.

So far Facebook has not take a similar stance. One possible approach would be for it to limit micro-targeting of political and issue ads, the same way Facebooks limits housing, employment, and credit ads to prevent illegal discrimination. So, for instance, Facebook could decide that political and issue ads can only be targeted geographically by whole states and territories, and would go to all adults in those states and territories. That would probably destroy the economic incentive for those kinds of ads.

Instead, on 7 Nov 2019, Facebook suspended all ads that don't follow new guidelines:

Begin Creating New "Paid for by" Disclaimers
This ad can't run because you'll need to complete the new disclaimer process. We've strengthened our disclaimer requirements for ads about social issues, elections and politics. All issue, electoral or political ads must now include disclaimers created using the new requirements. Learn more, here.
What you can do: From a desktop computer, go to Page > Settings > Authorizations to create a new disclaimer.
From the link, we learn
All information provided by the advertiser and confirmed by Facebook will be made publicly available in the Ad Library for 7 years. This includes street address, phone number, business email, website and FEC ID, if used.
That seems to imply that the home phone, street address, and email become public for all political advertisers. Considering the numbers of crazies and malcontents on the internet, that seems to be a rather high risk for individuals, so there won't be any more paid political advertising from politicalscrapbooknet.

Breaking Up is Hard to Do
revised 7 March 2020

Facebook's recent disclosure requirements on political ads, mentioned above, seemed onerous enough, but perhaps not for everybody.

Yet it seems likely that Facebook will be forced soon enough to join Twitter in banning political ads because of the insurmountable problems they present.

Anyway, it's not clear that social media political ads are good for much except rallying the troops who are already convinced. The intent of politicalscrapbooknet's advertising was to reach persuadable voters who hadn't made up their minds. There's no evidence that succeeded.

As far as attracting an expanding loyal reader base, political advertising goosed politicalscrapbooknet from nothing in Nov 2017 to 742 Like and 754 Follow in June 2018. Almost two years later in March 2020 it's hardly changed at 733 Like and 746 Follow. Loyal, but not expanding. At least it worked way better than the Twitter campaign mentioned above.

With that in the background, imagine my surprise on 24 Feb to receive a bill for $647 for political ads placed 11 Nov 2017 to 8 Jan 2018 - over two years earlier.

I immediately complained and got this helpful automated response

I'm sorry you're having trouble with your Facebook ad account. It's look =
like you've contacted the incorrect team for this issue. Please fill out =
the form in the link below so we can make sure your request gets routed to =
the appropriate team:

which was for Policy Disabled Ad Account Help. While my account was restricted (is that the same as disabled or deactivated?) when I didn't comply with the new disclosure requirements, that was irrelevant to the issue at hand.

I found another place to complain and got an actual helpful response from an actual person. Dmitri investigated, confirmed my complaint, and got the charge reversed the same day. Thank you Dmitri!

Not wanting to go through this again, I wanted to delete my credit card number. But I couldn't modify my account because it was restricted. So on 28 Feb, Dmitri suggested I unrestrict myself at another link that led to Restricted Advertising Access. It asked "Please tell us why you should be allowed to advertise". At this point I was ready to deactivate my advertising account completely, so I answered that I didn't want to advertise, I just wanted to deactivate. In the fullness of time - 4 Mar - I got an automated response that my advertising access was incorrectly disabled and had been re-enabled.

First I did try again to delete the credit card, but I couldn't do that because I was told to check that my ads were all paid for - referring to a link on my ad account page that didn't seem to exist. Of course, I didn't want to advertise, I wanted to de-activate. So I hit the de-activate button. And was again advised that Facebook would have to check that my ads had been paid for before it could process the de-activation. One might think that would require a few microseconds, but on 6 Mar they are still checking. Finally I noticed on 7 Mar that the account had been de-activated. I didn't get any notice directly from Facebook.

Not wanting to take any more chances, by then I had cancelled the credit card in question at the issuer. I got a new credit card which I will use exclusively for internet providers that insist on periodic or random automatic payments.

revised 7 Dec 2020

Although no matter worthy of decision at the presidential level can be adequately discussed in 280 characters, that doesn't stop the tweeter-in-chief, and finally I decided to join in for a while as an experiment. Some Facebook posts got a corresponding tweet, usually condensed.

Then I tried the Beta of "Promote Mode" which was supposed to get you about 33 new follows per month for $99. After a month, I got three follows, one of which dropped out, for an average cost of $33 or $49.50 depending on how you look at it. Twitter said it promoted 141 tweets to reach 19209 accounts resulting in 89 profile visits. I cancelled the service after one month.

I tweeted priority Facebook posts through December 2019. Everything on Twitter had already appeared on Facebook. I then stopped tweeting for a while.

In August 2020 I started tweeting links to interesting journalism. Then I'd batch those up on a daily basis and post that on Facebook. The difference from before was that these items showed up first on Twitter. Facebook was reserved for long posts with more original content, plus the daily batches of tweets.

Social Media Technical Adventures
revised 21 May 2021

At the bottom of a typical Facebook post or Twitter tweet like these

that draws attention to a web page, there is usually a nice photo, title, and summary of that web page - called a Preview by Facebook, a Card by Twitter.

When the post or tweet contains more than one external link, which one is chosen? That's an interesting question, not easily resolved, but a question for another day.

It used to be that my simple unadorned web pages were treated the same - one of the photos was used, and a title and summary extracted from the top of the web page. Then that stopped without notice and posts referring to my own websites got very plain previews like

The last shows that professional news sites sometimes fail to set this up correctly.

At first I thought it was because I wasn't encrypting my websites (https: instead of http:) so I went through a learning process involving

apache httpd-ssl.conf 


Let's Encrypt



You can also get hints on securing your server at

You'll need to know the version of your server and SSL that you are using.

When all of that was sort of working, my life was more complicated - Let's Encrypt certificates expire every 90 days - but nothing changed as far as previews and cards. But the effort was necessary anyway because other hosts were not pleased with my ancient versions of OpenSSL and apache and sendmail.

Recently I decided to try again to see if I could understand the mechanism. I quickly found that the first step is to set up some meta data tags in the header of each web page. For instance, now has

<meta property="og:url"         content=""/>
<meta property="og:type"        content="website"/>
<meta property="og:title"       content="Political Scrapbook"/>
<meta property="og:description" content="Observations on politics and related matters - a discursive scrapbook"/>
<meta property="og:image"       content=""/>

<meta name="twitter:card"       content="summary_large_image" />
<meta name="twitter:site"       content="@politicalscrap1" />

The og: properties are from Open Graph. Twitter kindly uses most of the same ones as Facebook, but it has a few of its own. But how did I know which meta data to set up? Facebook and Twitter have developer web pages that promise to help Many other people have tried to explain this, such as

So I put the meta data between <head> and </head> - and nothing changed. Fortunately there are test sites to help debug -

I had problems immediately. Facebook issued the following warning among many others -

Missing Properties
The following required properties are missing: fb:app_id
A little research reveals that this is expected, meaningless, and may be ignored. But other things matter - Facebook didn't like my incomplete certificates. My certificates worked fine with sendmail and apache, but Facebook wouldn't do anything until I completed them. Fortunately help was available -

 What's My Chain Cert?

will generate what you need. Be sure to enter host name ( rather than its URL ( For Apache2, you put the full chain certificate in the same directory with your other SSL certificates and keys (/etc/apache2/certs in my case).

OK, so now you have your chain certificate. Now you have to add something like

SSLCertificateFile "/etc/apache2/certs/"
to all your VirtualHosts.

Fiddling with SSL/TLS settings is easy to get wrong and hard to get right, but fortunately you have ways of checking the syntax at least, and discovering other bugs you never knew about -

/usr/apache2/bin/apachectl configtest


/usr/apache2/bin/httpd -t

That's just syntax though. At this point you should be worried about semantics and perhaps you've found

to get ALL the bugs out of your SSL setup before facing Facebook again.

It takes a long time to finish, but right away you learn is that you don't have a


set up.

You read up about that and follow the example and put it in your DNS zone file IN CAA 0 issue ""

And it still doesn't work. Then you see that the CAA should be at the end of the DNS zone file, so you move it and - it still doesn't work. If you're lucky you find

CAA Record Helper

and Auto-Generate a CAA record, and reading down - discover that CAA records only work for BIND 9.9.6 and later. But no worries - they tell you what to do instead with earlier versions of BIND - IN TYPE257 \# 22 000569737375656C657473656E63727970742E6F7267

Just as you might have guessed! Maybe I should install current BIND. A project for later.

So you put TYPE257 in, restart DNS, and go back to ssltest.

ssltest now complains that you are allowing vulnerable TLS protocols - v1 and v1.1 - and vulnerable ciphers. That won't do so now you have to fix your Apache configuration - /etc/apache2/conf/extra/httpd-ssl.conf in my case. It suffices to add

SSLProxyCipherSuite HIGH:MEDIUM:!SSLv3:!kRSA

SSLProtocol TLSv1.3 +TLSv1.2
SSLProxyProtocol TLSv1.3 +TLSv1.2

and comment out any previous definitions. By the way, ssltest still takes a long time, but there's a faster way to check your protocols and ciphers -

will more quickly check just your protocols and ciphers to make sure that you are enabling TLS1.2 and TLS1.3 and disabling TLS1.1, TLS1.0, SSLv3, and SSLv2.

Likewise, from the command line -

nmap --script ssl-enum-ciphers -p 443 | grep TLS

When you get tls-test and nmap straightened out, go back to ssltest. Incidentally, be sure to completely stop and restart your web server every time you change the configuration files. Otherwise you will not seem to be making any progress.

If there are no further issues with ssltest, go back to the Facebook and Twitter test sites. If you pass all the security checks, then you can start debugging why your image does not look the way you think it should.

Often it's because the aspect ratio is wrong. Twitter wants 1.91:1, preferably 1200x628. So you make a new version of your image with that ratio, more or less, and test again and find that it still doesn't work - because Facebook and Twitter have their own internal caching mechanisms and even though you can ask them to refresh, it doesn't always seem to work.

But by this time, you've either given up or learned patience. Think of it as a big Jenga game.

There is nothing to buy or sign up for on this website.
Please report dead links, typos, and factual errors to
web-report at comcast dot net
Visitor count for this page starting 7 Dec 2020:
social-ads.html 1.9 21/07/05