Google’s useless-to-the-self-employed “External” label: another tiny bit of freelancer erasure

The Gmail app on my phone and in my browser looks a lot more yellow when I switch to my work account, and it’s all Google’s fault. Sometime in the last week or so, Google began slapping an “External” label in a shade of deep yellow on every message sent from somebody not in my organization.

Which, since I am self-employed, constitutes the rest of the population of Earth, plus every bot and script capable of sending me e-mail. Google describes the security measure it began enforcing in late April for Google Workspace accounts–the business accounts it once gave away for free as Google Apps, then turned into a paid service in 2012, then renamed to G Suite in 2016, and then renamed once again in 2020 to Workspace–as its way to help employees “avoid unintentionally sharing confidential information with recipients outside of their organization.”

Photo shows a spam message purporting to be from Comcast with Gmail's yellow "External" label, as seen on a Pixel 3a phone in front of graph paper.

But for solo practitioners who have no employees, it’s useless. It cannot teach me anything except that even when self-employed, I can still fall victim to IT department control-freakery–and that freelancers remain invisible to many business app and service developers.

(Fun fact about the obvious phishing message in the image here: Gmail’s spam filter did not catch it.)

A support note from Google indicates that Workspace users can turn off this warning. It does not explain why I don’t see that in my own admin console. But in a Reddit thread–once again, that site proved to be an underrated source of tech supportanother Workspace user said legacy free accounts don’t get that opt-out. A frequent Twitter correspondent with a grandfathered free account has since confirmed that he doesn’t have this setting either.

I suppose Google would like me to upgrade to a paid account, but I’m already paying: $19.99 a year for 100 GB of storage. The cheapest Workspace plan would only give me 30 GB and cost almost four times as much. Since Google apparently can’t be bothered to document this new limit to free accounts, the answer there is a hard nope.

All the time I’ve sunk into investigating this problem has not, however, been without benefits. Thanks to some hints from my fave avgeek blogger Seth Miller, I figured out how to disable the also-useless default warning about replying to external e-mails. To do that, sign into your admin console’s apps list page, click Calendar, click its “Sharing Settings” heading, click the pencil icon that will appear to the right of “External Invitations,” click to clear that checkbox, and click “Save.”

Although Calendar is clearly not Gmail, this settings change seems to apply in the mail app too. At some point while I was futzing around with Workspace settings, I also found an off switch for the comparable warning about sharing Google Docs with outsiders–but now I can’t find it, so maybe that opt-out is now yet another feature reserved for paying users but not documented accordingly.

Sore feet for a shot: an afternoon as a Virginia Medical Reserve Corps volunteer

Like many of you, I’ve spent much of the last year feeling helpless against this accursed pandemic–not just because of the existential dread inflicted by a disease that keeps striking people who wear masks and do the other right things, but because I could not do anything to help others beyond wearing a mask myself and writing the occasional article about exposure-notification apps and novel-coronavirus antibody testing.

Add on the guilt I’ve picked up about not getting sick despite the chances I have taken (meaning, gratuitously non-essential travel), and I felt even more that I had to give something else back. Thursday, I finally did.

That opportunity came via the Virginia Medical Reserve Corps, a program the state government set up in 2002. Although the MRC emphasizes medical backgrounds, it also welcomes volunteers with zero credentials in the field. I filled out my application in early February, got approved a couple of days later, and then waited to get an e-mail inviting me to an online training session. That didn’t arrive until March 1, at which point I realized I could have watched a prerecorded session any time over the previous three weeks.

Photo showing part of my Virginia MRC badge and COVID-19 vaccination card atop papers relating post-vaccination advice.

That video covered the basics of helping with COVID-19 vaccination clinics–including a mention that at the end of a shift, volunteers may receive leftover doses of the vaccine–but it did not prepare me for how quickly volunteer opportunities would get snapped up. The first few squandered chances pushed me to set up a Gmail filter to star and mark as important every MRC message.

And after weeks of waiting for vaccinations to open up for people in group 1C (my cohort, both because the Centers for Disease Control chose to categorize journalists as “other essential workers” and because I could stand to lose a few pounds), I finally opened one of those “Volunteers Needed” e-mails fast enough on April 1. I quickly signed up for a noon-5 p.m. shift April 8 at a community center in Arlington hosting second-dose vaccinations.

After a quick recap of basic rules Thursday afternoon (the important one being not to guess at answers to people’s questions) and my being issued a badge with my name and photo (as if I had a real job!), I got my assignment of minding the line. It was easy work: Check to make sure that the closest taped stripe on the floor inside the entrance wasn’t occupied, then wave in the next person on the line outside.

After a couple of hours, I took a break to finish gobbling down the sandwich I’d packed, then got moved to an indoor spot at which I could remind people to have their IDs and vaccination cards ready.

Here’s one thing I didn’t expect to get out of that: realizing how many people in so many different demographics were still waiting to finish getting vaccinated. Months after first responders and people over 75 should have all been covered, I saw several senior citizens in wheelchairs and two police officers waiting for their second shots, plus dozens more people visibly older than me.

That instantly silenced my inner monologue of grumbling over seeing younger friends posting vax selfies–and properly relegated my sore feet from hours of standing to the least of everybody’s problems.

The other surprise of this experience: how much I enjoyed brief banter with total strangers, something I last experienced working the election in November. (In retrospect, serving as a poll worker was a gateway drug for MRC volunteering.) I complimented people on the designs of their masks, greeted people wearing UVA caps with “Go Hoos,” made dad jokes about having your boarding pass ready… yeah, I do need to get out more.

One of the supervisors had asked early on if I would be interested in a vaccine dose if one were available (my reply amounted to “[bleep] yeah”) and as the last of hundreds of people with booked appointments stood in line, he said the words I’d been waiting to hear since last spring: “We have a shot for you.”

A day after getting my first dose of the Moderna vaccine, I have some soreness in that upper arm and a profound sense of gratitude. Instead of counting up after every exposure risk–five days without symptoms is my rough benchmark for assuming that I haven’t gotten infected–I can now count down. I’m T-minus 13 days until the vaccine should hit 80 percent effectiveness per the CDC study released at the end of March, T-minus 27 days until my second dose, and T-minus 41 days until my immune system has fully processed the vaccine.

I just hope today’s Costco run isn’t the crowded-places errand that gets me sick first.

But if I can get through the next five days and then cross that two-week post-first-dose mark, I’ll be ready to work another volunteer MRC shift. And this time, I’ll wear my hiking boots.

Your eyes are up there: an unfixed problem with virtual panels

After all of the practice the last year has given me at looking into a camera as if it’s another human being and carrying on a group discussion, I still struggle with one important bit: keeping my eyes focused on the camera.

File this under panel-moderation problems: If you’re going to write an outline of the talk beforehand and then consult that during the panel–as you should–you’ll leave your audience wondering why you keep glancing down.

In a real-world, non-virtual panel, the spectators almost always sit far enough away to not notice a moderator’s checks of their notes. But in a virtual panel, where the optimum distance for the camera is a couple of feet at most, this is hard to hide. Especially if you’re following the virtual-panel best practice of using a dedicated webcam and fastening it to a tripod in whatever spot will leave your face evenly lighted.

If I could ever boil down a panel outline to a large-type one-page printout that I could tape to a tripod, I might be in better shape–but then I’d still need to find some way to mount a screen close to the camera.

For those of you who also can’t self-edit panel notes and and also struggle with this first-world problem, here’s a workaround I latched onto today, when the unavailability of the Logitech webcam in the photo above may have been an advantage: After attaching my aging smartphone to the top of a chair with a cheap GorillaPod tripod and using the DroidCam Android app to employ its camera as a higher-quality substitute for my HP laptop’s white-balance-impaired webcam, I flipped that 2-in-1 convertible computer’s screen roughly 270 degrees into “tent mode” and draped it over that top railing with the screen facing towards me.

That left the screen placed just below the phone and allowed me to look more focused on the talk… right up until this recording ran over schedule and into my next appointment, leaving me squirming in my chair as I hoped everybody else would wrap things up already.

Reminder: Don’t overlook Reddit for crowdsourced tech support

Two weeks ago, I spent too much time on T-Mobile’s site because I didn’t go to Reddit’s first. I was trying to opt out of my wireless carrier’s new targeted-advertising scheme, but I could not find any way to do so when logged into my business account–and like any dummy perplexed by an unintuitive interface, I kept trying the same thing over and over instead of asking for help.

Screenshot of the icon for Reddit's r/tmobile subreddit: Snoo the alien, but wearing a magenta T-Mobile t-shirt under a jacket while holding a cell phone.

The answer I needed was waiting in a thread on Reddit’s r/tmobile subreddit, in which one T-Mo customer replied to a comment about the unhelpfulness of the carrier’s site for this opt-out by saying “I had to use the app and eventually found it in the privacy section.” As in, the T-Mobile app I’d had on my phone all long but had forgotten about, and which coverage I’d read about this issue had not clarified would be the only way for a business customer to adjust this setting.

(In case you’re still puzzling this through, open the app, sign in, tap the “More” button at the bottom right, and then tap “Advertising & Analytics.”)

This wasn’t the first time I’ve found Reddit’s company- or service-specific forums exceptionally useful for tech support. While smart companies maintain their own forums where people can sort out problems and share tips, Reddit has three things going for it that many other discussion boards lack: scale, a search that works, and crowdsourced measures of the value of a comment and its author.

Reddit upvotes, downvotes and the karma score they feed into can be abused like any other social-media system to protect toxic behavior–it was only last June that Reddit nuked r/The_Donald and some 2,000 other subreddits for repeated hate-speech violations. (Of course, there’s a subreddit on which you can debate those risks of abuse at length.) But in the context of a subreddit set up for users of the same app, service or gadget to solve each other’s problems, these collective accountability features seem to function well enough. I also keep wondering if Twitter could use some version of a karma score–and that, decades ago, Usenet could have had one as well.

Plus, many of these product-specific subreddits also feature wikis maintained by their more-frequent contributors, something you almost never see at the forums a company maintains for its customers.

In addition to T-Mobile tech support, I’ve found Reddit a good resource for help with my HP laptop, and some of my earlier smartphones. Reddit’s also proved useful as a journalistic resource when I’ve needed to find people using a service with limited availability, like Verizon’s 5G Home fixed-wireless service or SpaceX’s Starlink satellite broadband. I try to pay that assistance back by showing up in threads other people have started about my own stories–yes, “robpegoraro” there is me–and offering to answer whatever questions people have.

Writing this post made me realize I’ve probably neglected Reddit’s potential to help me puzzle through one app I use all the time: this blogging platform. Maybe r/Wordpress can help me feel less grumpy about the Block Editor?

Google Photos storage won’t be free. Now what?

Almost five and a half years ago, I wrote a post for Yahoo Tech about the launch of the new, free Google Photos service that ran under the headline “Will Google Really Store All Your Photos Forever?” Wednesday, Google answered that question: No, it won’t. At least not for free.

That response came in a corporate post from Google Photos vice president Shimrit Ben-Yair announcing the end of the unlimited-with-imperceptible-compression picture storage that Google had touted at its I/O developer conference in San Francisco in a simpler time:

Starting June 1, 2021, any new photos and videos you upload will count toward the free 15 GB of storage that comes with every Google Account or the additional storage you’ve purchased as a Google One member.

I don’t have to worry about this just yet. Beyond “only” having squirreled away 4.4 gigabytes of images and video on Google Photos–a rate of accumulation that Google estimates won’t push me past that 15 GB threshold for another year–my Pixel 3a phone entitles me to continued free backup from that device.

But at some point, I’ll retire that phone and may need to make some budgetary decisions. My USA Today colleague Jefferson Graham outlined the major alternatives in a post Wednesday. Leaving out Apple’s Android-excluded iCloud and assuming yearly discounts, here are the cheapest options:

  • Amazon (unlimited storage, included with $119/year Prime Account)
  • Dropbox (2 TB, $119.88/year)
  • Flickr (unlimited, $60/year)
  • Google (100 GB, $19.99/year)
  • Microsoft (100 GB, $23.88/year)

As it happens, I’m already paying for three of those–I’m an Amazon captive like everybody else, I’ve paid for Flickr Pro since 2011, and I subscribe to the 1 TB tier of Microsoft 365 for easy backup of my Windows laptop. (I also pay Google for 100 GB of storage for my G Suite work account, but that’s separate from the everyday Google account I use on my Android phone.)

I already have Flickr set to back up my photos–although the app only does that when I open it, not in the background–so that would seem the logical fallback option. That service also offers the advantage of existing outside the orbits of the tech giants. But although Flickr has worked to apply some machine-learning techniques to photo searches, it’s nowhere as good as Google at finding photos without a human-written title or description: A search for “eggs” in Google Photos yields 19 photos, only two of which don’t feature actual eggs. On Flickr, that nets me one photo, a close-up of fingertips.

So the easiest choice for me, for now, is to change nothing and hope I can stay under that 15 GB limit. One thing I will do, and which you can as well to free up some space: Clean out your Gmail by searching for and deleting messages from certain senders older than a set number of days, weeks or months (as I told USA Today readers back in 2012, when daily-deal messages were a serious consumer of inbox space).

But maybe I’m wrong. Here’s your chance to show that: Take the survey below and then leave a comment explaining your choice.

My $5 solution to woeful webcams on my laptop and desktop

It’s only taken me seven months of fumbling iteration, but I think I’ve finally found a video-conferencing setup that doesn’t leave me yearning for an upgrade to my hardware right after a video call.

That’s taken a while. Back when All This started, I thought the iSight camera on my aging iMac could suffice. But while it delivers fine footage for its 720p resolution, having it attached to a computer essentially fixed in place left me with bad lighting–when I face the screen, daylight only hits one side of my face.

My HP Spectre x360 laptop (at almost three years old it also now must be considered “aging”) features a 1080p camera and is no problem to move, even if I can only elevate it by parking it atop a stack of books. But while I knew its video could look a little washed out, I didn’t realize how bad its white balance could get until I saw it turn a dark-blue shirt bright purple. Next!

I did a few panels with a thoroughly janky setup: my iPad mini 5, propped upright between the keyboard and screen on my laptop. That tablet has a much better camera, but that excuse for a tripod limits my options for positioning it. And pressing the iPad into service as an expensive webcam meant I couldn’t use it to read my notes for a talk.

Installing the Zoom app on my phone solved the positioning issues–I have a tripod and a phone-clamp attachment–and let me easily address any producer’s request to move the camera just a bit up or town. But the Pixel 3a’s front camera is nowhere as good as its back camera, and its microphone can’t match the USB mic that I can plug into my desktop or laptop.

I finally got around to researching apps that could let my laptop or desktop borrow my phone’s camera–meaning, the higher-quality one on its back–as their own. I followed Whitson Gordon’s advice in PCMag to use Dev47AppsDroidCam, a duo of Android and Windows apps that can communicate via WiFi or USB. Getting rid of the ads in the Android app and enabling a high-definition option requires its $4.99 Pro version, an expense I gladly paid.

DroidCam’s Android and Windows halves aren’t much to look at, and the Windows app was fussy to set up. But once the two devices are paired, the software just works, reliably adding DroidCam as an input option in Zoom. 

Optimizing this setup required configuring the phone and laptop to link via USB to reduce the risks of overloading a WiFi network or introducing some lag in my video, which in turn entailed some entry-level Android tinkering to enable Developer Options and then USB Debugging. And now I have a video-conferencing setup that lets me position my best camera wherever an event producer wants, use a desktop USB microphone for the best sound quality, and keep my iPad free for consulting notes.

Things would be easier still with the Wirecutter-endorsed Logitech C920S webcam. But that gadget must have key components made out of unobtainium, considering its perpetually out-of-stock status.

I thought I’d finally broken through when Best Buy’s site reported it last week as available for delivery today to my nearest store, so I eagerly punched in my order. But as today ground on without a pickup notice from that retailer, I knew what was coming: a “Rob, there’s a delay with your order” e-mail sent at 6:22 p.m. 

Update, 10/5/2020: To my pleasant surprise, the Logitech webcam was available for pickup on Friday. Video quality on it seems to be great, so I’m sure some other malfunction will arise on my next video call.  

My fellow Virginians, please install the COVIDWISE app. Now, thank you.

As the United States continues to flail away at the novel-coronavirus pandemic, my part of it has done one thing right. Wednesday morning, Virginia’s Department of Health launched COVIDWISE–the first digital contact-tracing app shipped in the U.S. on the privacy-optimized Exposure Notifications framework that Apple and Google co-developed this spring.

What that means is that COVIDWISE, available for iPhones running 13.5 or newer and most Android phones running Android 6.0 or newer, requires none of your data–not your name, not your number, not your e-mail, not even your phone’s electronic identifiers–to have it warn that you spent a sustained period of time close to somebody who has tested positive for COVID-19.

COVIDWISE and other apps built on the Apple/Google system instead send out randomized Bluetooth beacons every few minutes, store those sent by nearby phones running these apps, and flag those that indicate sufficiently extended proximity to allow for COVID-19 transmission as doctors understand it. That’s the important but often misunderstood point: All of the actual contact matching is done on individual phones by these apps–not by Apple, Google or any health authorities.

If a user of COVIDWISE tests positive and alerts this system by entering the code given them by a doctor or test lab into this app, that will trigger their copy of the app to upload its record of the last 14 days of those flagged close contacts–again, anonymized beyond even Apple or Google’s knowledge–to a VDH-run server. The health authority’s server will then send a get-tested alert to phones that had originally broadcast the beacons behind those detected contacts–once the apps on those devices do their daily check-ins online for any such warnings.

The U.S. is late to this game–Latvia shipped the first such app based on Apple and Google’s framework, Apturi Covid, in late May. In that time, the single biggest complaint about the Apple/Google project from healthcare professionals has been that it’s too private and doesn’t provide the names or locations that would ease traditional contact-tracing efforts.

I’m not writing this just off reading Apple and Google’s documentation; I’ve spent a lot of time over the last two months talking to outside experts for a long report on digital-contact-tracing apps. Please trust me on this; you should install COVIDWISE.

Plus, there’s nothing to it. The pictures above show almost the entire process on my Android phone: download, open, tap through a few dialogs, that’s it. At no point did I have to enter any data, and the Settings app confirms that COVIDWISE has requested zero permissions for my data. It uses the Bluetooth radio and the network connection; that’s it, as I’ve confirmed on two other Android phones.

If I’m curious about how this app’s working, I can pop into Android’s Settings app (search “COVID” or “exposure”) to see when my phone last performed an exposure check. But I don’t expect to get any other sign of this app’s presence on my phone–unless it warns me that I stood too close to somebody who tested positive, in which case I may not enjoy that notification but will certainly need it.

Updated 8/6/2020 with further details about the app’s setup and operation.

Streaming-TV sites still need some design work

This year’s version of the “what regional sports networks will shut up and take a cord-cutting baseball fan’s money” story was not like the last three. I wrote it much later in the year, it’s at Forbes instead of Yahoo, and it finally brings good news for Washington Nationals fans.

But the process of researching which streaming services carry which baseball RSNs was as annoying as ever, thanks to these companies not fixing the user-interface problems that gummed up last year’s work.

AT&T TV Now: The channel-finder page of the streaming service formerly known as DirecTV Now requires third-party cookies for reasons unexplained, ensuring it will break in Safari and Firefox. You can search by Zip code but then often must choose a county inside that Zip, a detail no other streaming service requests. AT&T also has yet to update this site to include the four sports networks (for the Nats, Orioles, Rockies, and Pirates) that it just added, much less the Seattle RSN it soon will offer.

This site does, however, get one thing very right that its rivals don’t: It inventories the teams featured on its available regional sports networks.

FuboTV: This sports-oriented streaming service has a simple channel-lookup page that you may not know exists, as neither its home page nor its support site seem to point visitors to it. Too bad, because it’s a model of simplicity: Type in a Zip code, and it lists the local channels first, identifying both broadcasters and regional sports networks with a blue “Local” tag. Fubo also lists the RSNs it carries nationwide in a tech-support story that seems to be regularly updated, but neither that nor the channel-finder associate networks with their core teams.

Hulu + Live TV: You can’t miss the channel-lookup interface here, since it’s waiting behind a “View Channels In Your Area” link on this service’s live-TV page. Plug in a Zip code and you get a clean listing of channel icons, with “Live Local Channels” at the top. Unfortunately, they’re all shown only as icons, without any pop-up text to identify the more cluttered graphics among them, and it’s up to you to remember which RSN features which sports franchise.

Sling TV: Sling charges just $30 for the basic service (one good reason why I’m a subscriber) and apparently isn’t too concerned about getting people to buy up to a higher tier to watch pro sports. Seeing what regional sports networks you might get that way requires clicking around a support site that keeps pointing you to a now-useless “Game Finder” page (well, useless unless you had not learned that the coronavirus pandemic has made a mess of every pro sports league’s schedule). The link you actually want, “Finding Your Game On A Regional Sports Network,” clarifies that Sling only carries three such networks, the Comcast RSNs in the Bay Area and Washington, what I like to think of as the Other Bay Area. 

YouTube TV: Google’s streaming service doesn’t make you search hard for a channel lookup–the form is right on its home page and is automatically populated with the Zip code for what Google thinks is your location. Click the big blue “Submit” button or type in a different Zip code before confirming that, and you get an improved version of Hulu’s interface that labels channel logos with their names. But as at everywhere but AT&T TV Now, you still have to look up which RSN carries which teams.

I would like to think that these sites will do better and ease the 2021 version of this work. But in case they don’t, I finally took the time to crate a spreadsheet (the Forbes post features a cleaner, searchable version) that I can update whenever these services add or drop a channel. I hope there’s more of the former happening than the latter, so that when I’m looking at the prospect of a 162-game Nats season next spring I won’t be limited to one service carrying those games.

I survived yet another year of self-inflicted tax prep

The annual exercise in accounting self-abuse that is me doing my own taxes ended three months later than originally scheduled and yet still on time, thanks to the IRS pushing Tax Day back to July 15 to make up for the coronavirus ruining everything.

That delay taught me what I’d needed all along to make this math masochism easier: a dress rehearsal a month and a half before the real deadline. Here, my thanks must go to the Virginia Department of Taxation, which extended the deadline to pay state taxes but only by a month–from May 1 to June 1–and left in place the automatic six-month extension to file state returns.

I didn’t want to send too much or too little money to Richmond, so I needed to get our federal taxes close enough to done for me to plug the relevant figures into our Virginia return and get a reliable estimate. I plowed through TurboTax, as usual needing much more time to calculate my business profit after expenses than for any other part of the return. As much as I miss having itemized deductions make a large amount of our tax bill vanish, getting them right did eat up a lot of hours.

(Side rant: My TurboTax labors also went faster than usual because I finally figured out the freakshow workaround required to import statements from some old American Funds holdings. Without that, I would have had to type in those figures by hand because the PDF download this inept investment firm provided was a giant image without any selectable numbers.)

That work yielded nearly-final figures for the federal return that I could flow into a Virginia return in TurboTax. Then I double-checked that result by redoing the state math in Intuit’s woeful Free Fillable Forms online app, what I actually use to file because I refuse to reward Intuit for its rent-seeking strategy of getting states to retire their own online-filing tools.

In past years, TurboTax and Free Fillable Forms have agreed on what I’d owe Richmond or what Richmond owed us. This year, the stone tablet of spreadsheets said we’d owe $10 more than what TurboTax estimated for our Virginia bill. I ignored that at the end of June but went back through all the numbers again this week without finding any reason for the difference. Which is fine–maybe we paid Virginia a Hamilton we don’t owe, but I’m sure my state could use the help these days.

After going over our federal returns one last time Wednesday night, I had them e-filed before 10 p.m. Wednesday, then had the state returns dispatched an hour later. That left one last tax-prep chore: tweaking the Google Docs freelance expenses spreadsheet template that I shared here two winters ago to make it a little clearer which home-office expenses should be added together.

How I got Amazon Prime almost for free

Last summer, my appetite for quantifying my finances intersected with my food-procurement habits to yield a math exercise: How much of my Amazon Prime membership was I chipping away with these discounts at Whole Foods?

The Seattle retail leviathan’s 2017 purchase of the Austin-based grocery chain consolidated a large portion of my annual consumer spend at one company. It also gave me a new set of benefits for the Amazon Prime membership my wife and I have had since 2011: an extra 10% off sale items except beer and wine, plus some Prime-only deals.

(Personal-finance FYI: Amazon also touts getting 5% cash back at Whole Foods on its credit card, but the American Express Blue Cash Preferred offers 6% back on all grocery stores. That higher rate combined with Amex Offers for rebates at designated merchants easily erases the card’s $95 annual fee and returns more money than I’d get from Amazon’s card.)

So on my way out of Whole Foods, I created a new Google Docs spreadsheet on my phone and jotted down the Prime savings called out on my receipt. Then I did the same thing after subsequent visits. If Whole Foods and Amazon were going to track my shopping habits (which I assume they could from seeing the same credit card even if I didn’t scan in the QR code in the Amazon app at the checkout), I ought to do likewise.

Aside from $10-and-change savings during last July’s Prime Day promotion and again on roses for Valentine’s Day, most of these 41 transactions yielded $4 or less in Prime discounts. But after a year, they added up to $118.14, just 86 cents less than the $119 Prime annual fee.

To answer the obvious question: No, I did not step up my Whole Foods visits because of this tie-in. That place does happen to be the closest almost-full-spectrum grocery store to my home, but there’s a Trader Joe’s barely further away that trades a smaller selection for cheaper pricing on staples like milk and flour. And thanks to this dorky habit of mine, I can tell that I’ve shifted more of my business from WF to TJ’s the past few months.