My First COVID Infection (personal science, reposted from Twitter)
From time to time I repost old Twitter threads here for posterity. In February 2025 I caught COVID for the first (and so far only) time, and allowed myself the fun of running a series of at-home experiments on my own viral load and infectiousness: cutting up N-95s into rapid tests, capturing exhaled virus in a HEPA filter overnight, and turning rapid-test photos into semi-quantitative viral-load curves. I posted them as a handful of threads, now repackaged as a blog post, with the missing conclusion. I’ll end up showing my nose can scream positive while my breath is clean. Enjoy!
‘Twas a good run
Day 2 February 21, 2025.
Whelp. ‘Twas a good run!

Boring so far 🤞🏻. Thought it was a cold but maybe flu (since that’s everywhere right now). Coming up red hot for Covid was a big surprise!
I’m gonna be chill. Also started metformin and will start pax tmrw (I’m low risk IC from MS). So not too worried.
Round 1: where’s my virus?
Day 3 February 22, 2025.
Feeling okay so far, so let the science fun begin! (Not gonna lie, I’ve been happy to avoid COVID for the last 5 years, but I’ve been looking forward to having fun with it, god-willing, when it got me.)
First, the red hot positive yesterday was on what I think is day 2 of symptoms. Interestingly, my first symptoms were probably achey legs yesterday. (Vascular disease much??) Since last night, mild sore throat and some stuffiness. Was expecting flu or nada, COVID was a surprise!
Now, to the fun. I put a fresh 3M Vflex n-95 on for the last hour. And then I cut two pieces out. One from right in front of the mouth/nose, and one from the top side as far from the droplet “splash zone” as possible. And then put both cutouts in rapid tests.



Result? The line-of-fire center sample was positive after about a minute, and maybe doubled in intensity over the remaining 14 minutes. I have no cough or sneezing at all, and so this is a measure of virus excreted during tidal breathing.

The side sample from top-left of the nose was negative.

Each sample was about 1 cm^2 in area, from a total x-sectional mask area of ~200 cm^2. With the mask on, the side surface is nearly parallel with the breath jet, and is far off-axis. So the effective x-section is very low.
While this is far from a careful test, it’s interesting to notice that perhaps the quality of the seal isn’t that important for source control, provided the jet region is well-covered. Something to perhaps find some comfort in when worrying about fit factors on “baggy blues”.
This can’t disambiguate droplet from fine aerosol shedding. I’ll put a mask cutout over the filter material in my HEPA overnight to see what happens. But I also have a box fan blowing out for negative pressure, so I’m not sure there will be enough buildup to measure.🤞🏻 we’ll see!
Round 2: it’s airborne!
Day 3 February 22, 2025.
Last night, I put a mask filter inside my hepa and left it near my pillow, in the direction I tend to face while sleeping, about 18 inches away. Because the mask was inside the machine, there was no path for ballistic droplets to get to it. Only exposure is fine aerosols.


Why near the pillow? Because I also ran the fan blowing out to keep viral concentrations low and to prevent leakage into the house. CO2 ~525ppm all night.

Result after testing a square centimeter of mask filter? Positive! (Nose/throat this morning on left, overnight HEPA on right).


Despite only covering ~1/4 the hepa filter surface with a mask, and being in a very well ventilated room, I got direct evidence of virus excretion on fine aerosols. Not a surprise as it’s been very well studied, but fun to see at home! There really is no room left for doubt.
Thankfully still feeling fine. Started paxlovid this morning, so the next round of experiments will be about how fast viral load crashes out. Stay tuned!
Brief interlude
Day 5 February 24, 2025.
Viral load still frustratingly high despite two days of paxlovid and metformin. Not a surprise given the data, but still. 😡
So how do we help keep the bathroom clear, since we don’t have hepas and windows like everywhere else? Far UV-C from @NukitToBeSure!


Unfortunately my wife tested positive Sunday. I probably got her in the first twelve hours overnight, before the v-flex came out. Toddler still negative, and as asymptomatic as she ever is at this age, so I’m putting the 10,000x fit factor of a 3M v-flex to the test! 🤞🏻
Observations on viral load (Fun inside!)
Day 7 February 26, 2025.
Viral load plummeted after 4 days of Paxlovid. I did some math (somewhere between back-of-the-envelope and semi-quantitative modeling) to estimate changes in viral load.

As you can see, I went from screaming hot viral load on symptomatic days 2 thru 5, to very low but still detectable on day 7. Along the way, on day 5, I lost much of my sense of taste and smell, but it started coming back yesterday and is not bad today.
Because I’m annoyed we don’t have app readers to turn rapid tests into semiquantitative readouts of viral load, even though it’s obvious to everyone who uses them that you can read out relative viral load with the intensity (and time to positive), I did some analysis.
First, convert to grayscale and use a color picker to grab approximate absolute brightness data for the test line, the control line, and the test strip background. Put that in a spreadsheet and plot.


Second, normalize the test and control data by the background to get the excess darkness relative to the lighting and materials (and put it on a log scale). The control line is less variable now, although there is still a difference between flowflex (day 2,7) and iHealth.

So, we go one step further to normalize the test line darkness relative to the control. And now we have a nice time trend of antigen detected.

And since the y-axis units don’t have an absolute scale anymore, let’s also just plot it as adjusted darkness relative to peak. What we see by eye at the top is now clear: after a small decline in antigen detected over the first 5 days, day 7 was ~12x less intense.

From there, what does that mean for my viral load (and likely infectiousness). For that, we need some idea of how more quantitative measures like pcr ct and genome copies vary with lateral flow test antigen binding. I couldn’t find one paper that does that for either test, so I stitched together some bits from a few papers to get the gist.
1) Aboagye et al. 2024, Comparative evaluation of RT-PCR and antigen-based rapid diagnostic tests (Ag-RDTs) for SARS-CoV-2 detection: performance, variant specificity, and clinical implications 2) Bayart et al. 2022, Analytical sensitivity of six SARS-CoV-2 rapid antigen tests for omicron versus delta variant 3) Frew et al. 2021, A SARS-CoV-2 antigen rapid diagnostic test for resource limited settings
I’m too tired right now to document for twitter how the next few images came to be, but I’ll post code eventually.
A careful look at this stuff finds that genome copy number is not linear in antigen test line intensity. Rather, depending on the dataset and the paper, you can work through either direct genomes vs intensity or genomes to ct to intensity to find genome copies is proportional to color intensity to a power of between-ish 1.4 and 3. I think what’s going on is intensity is linearly proportional to genomes at low signal, but nonlinear diffusion-binding-optical junk kicks in at higher concentrations, so studies differ.
And the dynamic range of rapid tests with pcr ct is well-known to be something like ct =15 (for the hottest infection ever) to ct ~30 for rapid test negative.
So anyway, with that in mind, I can stitch together estimates of the pcr-equivalent ct value I would’ve likely had, and the relative genome copies from peak. Here ya go!


This is cool, because I find it really useful to know that I’m something like 30-200x less infectious per minute of contact than I was a few days ago.
At onset, I could’ve been an epic superspreader if I hung out in a crowded space. I felt fine. I’ve mostly felt fine this whole time. If I wasn’t very curious (and thought I might have flu), I’d never have known! Even with so much immunization, superspreading remains a thing.
Second, now I still have to be cautious around my family, but I am able to feel a lot more relaxed about my n-95 getting the job done. That takes a large mental load off.
Anyway, I wish we had standard tools for this. This kind of thinking would be way easier if it was just published for every test. And, I didn’t do this analysis for mask viral load (aerosols), but nose/throat swab. It would be easy to make that correlation standard too.
We could know so much more about bespoke, personalized infectiousness! Which would make mitigation easier, more specific, and more palatable. I was hoping that future would come to pass 4 years ago. I hope for it still!
Relative infectiousness via mask samples
Day 9 February 28, 2025.
tl;dr: I’m probably at least 5000x less contagious yesterday (day 8 of symptoms, day 5 of Paxlovid) than I was on day 2 (peak).
As I lazily described above, you can do some simple image processing to make rapid tests quantitative, and how to test an n-95 for exhaled virus. So we can put these together and compare exhaled viral load changes with nasal/throat swab changes, to get as close a proxy for contagiousness as possible!
Unfortunately, I only have two good mask samples (because I wasn’t planning on doing this quantitative stuff until a few days ago).
-
1 hour on day 2 of symptoms when I was red hot by nose
-
11 hours yesterday (day 8) when I was still faintly positive at ~200x lower viral load
The day 2 mask after an hour was positive, solidly at the mouth and juuuust barely at the top by the nose, out of the jet zone. (The side sample looks negative by eye, but the brightness dips very slightly, from background ~140/255 to test ~137/255, as seen with a color picker.)

The day 8 mask, even after 11 hours, was NEGATIVE negative. No signal from background at all.

So, just for fun, the figures below shows the precise estimate for the relative viral load for the nose and mask on day 8 vs day 2, and the upper bound for the mask.

As you can see, quantitatively, I’m at least 5000x less contagious via the air than yesterday (and possibly infinitely less). So, I am very very likely no longer contagious! I’m also at least 70x less infectious by saliva. So I probably can’t infect anyone else now!
I will mask until twice negative on the nose because why not? (Also, gotta watch for rebound!)
How cool is it to have quantitative measures of contagiousness?! With an app reader for the image processing, and instructions for mask testing, everyone could have this.
With more rigorous correlation of antigen test color, pcr ct, and existing studies correlated ct with transmission, we could have quantitative transmission risk measures for anyone who tests. Beyond satisfying my curiosity, I hope having these examples will help me advocate.
Addendum: I’m out of FlowFlex and iHealth tests, so I got a few crappy BinaxNow (I can’t get a solid control line on these…), and I’m nose/throat negative on Day 9.5. The upper bound is probably above my last two FlowFlex, so not sure what to make of it.
Still tired and taking daily naps, but otherwise fine. Fingers crossed I throw a few more negatives and I’m freed on Monday.
The Mrs is doing well too, but still testing quantitatively more positive than me.
Daughter holding negative. Thanks masks, HEPAs, and windows!
Rebound
Day 14 March 5, 2025.
The Famulare family COVID saga continues. Up today: rebound 🤬
With my wife Marisa’s consent, here is our estimated nose/throat viral load history relative to peak since I first tested positive on day 2 of my symptoms. We’re both experiencing rebound!

Here’s the same with log10-y. So yeah, we’ve both rebounded. I took paxlovid days 3-7 (and have been on metformin since day 2). My load crashed by day 7 and went negative days 9 and 10. Marisa hasn’t had any treatments, and never went negative, but 10-fold rebound regardless.

First, it’s annoying! We’re very ready to be done. We’re tired of not having Marisa’s parents visit. Of masking around our toddler (who hasn’t caught it yet, as far as tests and symptoms say). Of runny noses. Of being tired. And Marisa, who has had it worse, is tired of coughing!
But, because at least it’s fascinating, I’ve been doing a lot of rapid tests on interesting samples on myself. So let’s get into some interesting stuff.
I tested on day 11 after testing negative twice because I noticed my nose was running just a little bit more and I was a bit more tired than the day before, and I was curious about rebound. Sure enough, I got a very faint positive.
That night, I was visited by GI distress! This is not a big surprise as we know COVID is shed in stool and can settle in the gut for the long haul, especially in someone like me who takes a B-cell-depleting therapy for MS and can’t make new antibodies.
That said, I’ve tried three different approaches to get a fecal rapid test, but all have been negative. But I can’t be sure if the virus isn’t there or the tests don’t work with that medium…
- first try: sample probably too acidic: got weird transient positives on flu B and rsv but always covid-neg
- second: swab of solids, one minute in buffer, covid-negative
- third, swab of toilet water + solids, 5 minutes in buffer, covid-negative
So anyway, stool sampling with rapid tests has been a letdown, but mask, hepa, nose, and throat sampling have been interesting! Here’s a panel of days I tested samples from sites other than combined nose-throat. Y-axis is est. viral load relative to nose-throat day 2 (peak).

First up, masks. tl;dr: mask and nose viral load tell different stories over time! And I’m very likely a lot less infectious via the air now than at the start.
As discussed above, on day 2, I was able to pull virus off a mask worn for an hour. In front of the mouth was highest viral load, with a very little but non-zero positive away from the mouth. (Wasn’t negative like I originally said.)
Overnight from day 2 to day 3, I was able to pull virus off a mask put inside my bedside hepa filter, showing that SARS-CoV-2 was travelling on fine aerosols. You see that quantified here, as the day 3 hepa measurement.

On day 8, my nose-throat viral load dropped by a factor of 1000, give or take, and my mask sample was negative, despite wearing it for 11 hours. So good, nose way down, aerosol negative.
But, on day 12, my nose/throat sample is hot as hell again! Dammit, how infectious am I???
I wore a clean mask for 4.25 hours, through work, talking, singing Moo Baa Fa La La to my daughter, etc. Tested the mask. It was barely positive–at the limit of detection but it’s there.

But quantitatively, while my nose swab viral load on day 12 was about ~1/2 of the value on day 2 (so basically the same), the mask viral load is at least 500x lower! Overnight hepa was negative. This is great! There was very likely zero SARS-CoV-2 in my lungs last night.
Even more interestingly, I tested nose and throat independently, instead of with a combined swab. Nose is strongly positive, almost exactly the same test-line-contrast-adjusted level as the nose-throat swab earlier that day. And the throat-only swab was negative.
Throat-only negative. Mask barely barely positive. Nose hot as hell. So?
It’s very likely I’ve got no infectious breath, no infectious spit, but very infectious snot. My only symptoms right now are fading GI, and one stuffy nostril.
NOW I STILL BETTER KEEP WASHING MY HANDS 😂
So anyway, there’s what I hope is a fascinating look into a single infection history, so far. I’m disappointed the stool tests are negative, but, as my symptoms calm down, I hope it’s because there’s very little virus there. I also really hope my wife and I clear this thing soon.
Until then, I’ll let you know if anything else interesting comes up. Thanks for reading along!
It’s finally over!
Day 20 (new content)
After 17 days for Marisa and 20 for me, we’re finally done!
Two peaks of symptoms, two peaks of nasal viral load,

but, at least for me, only 1 peak of infectiousness.

This bioaerosol stuff is so damn cool! Despite rebounding on the nasal swab completely, I probably never shed anything of import for anyone else after day 7.
FDA, it would be nice if you didn’t have to be someone like me to know that!
For attribution, please cite this work as:
Famulare (2026, Jun 19). My First COVID Infection. Retrieved from https://famulare.github.io/2026/06/19/My-First-COVID-Infection.html.