Profile: medium.com/@ben.g.ballard Data Source: medium.com/me/stats Last Updated: February 2026 Review Cadence: Monthly (1st of each month)
| Metric | Value |
|---|---|
| Total Stories | 40 |
| Total Views | ~42,960 |
| Total Reads | ~15,550 |
| Total Earnings | $85.44 |
| Avg Read Rate | 36.2% |
| Avg Earnings/Read | $0.0055 |
| Avg Earnings/Story | $2.14 |
| All Stories Member-Only | Yes |
The single most important insight: 5 stories generate 80% of all revenue.
| # | Story | Views | Reads | Earnings | % of Total |
|---|---|---|---|---|---|
| 1 | Unlocking Sports Betting with Python | 6,700 | 2,300 | $32.26 | 37.8% |
| 2 | Analyzing NBA Data Using Python and APIs | 14,100 | 5,800 | $13.45 | 15.7% |
| 3 | How to Analyze NBA Stats with the NBA API | 3,800 | 1,100 | $12.47 | 14.6% |
| 4 | Using Google Trends API with Python | 4,300 | 1,930 | $7.58 | 8.9% |
| 5 | Easy Live Sports Odds: A Guide to Google… | 1,990 | 545 | $2.86 | 3.3% |
| Top 5 Total | 30,890 | 11,675 | $68.62 | 80.3% | |
| Other 35 stories combined | 12,070 | 3,875 | $16.82 | 19.7% |
What the top 5 have in common: Every single one is a “How to use [API/Tool] with Python” tutorial. None are opinion pieces, player profiles, or pure analysis.
| Category | Stories | Views | Reads | Earnings | % Revenue | $/Story |
|---|---|---|---|---|---|---|
| Sports Betting & Odds | 3 | 8,827 | 2,901 | $36.62 | 42.9% | $12.21 |
| NBA Analytics | 17 | 23,709 | 8,374 | $34.57 | 40.5% | $2.03 |
| Python/DS Tutorials | 9 | 8,601 | 3,651 | $11.53 | 13.5% | $1.28 |
| Personal/Meta | 4 | 1,039 | 398 | $1.63 | 1.9% | $0.41 |
| College Football | 5 | 706 | 291 | $1.01 | 1.2% | $0.20 |
| Maryland/Other | 2 | 123 | 47 | $0.08 | 0.1% | $0.04 |
Key Takeaway: Sports betting earns $12.21/story vs. the overall average of $2.14. NBA analytics has volume (17 stories) but is dragged down by low-performing player profiles. College football and local data pieces barely register.
| Story | Length | Views | Reads | Earnings | $/Read |
|---|---|---|---|---|---|
| Unlocking Sports Betting with Python | 8 min | 6,700 | 2,300 | $32.26 | $0.014 |
| Analyzing NBA Data Using Python and APIs | 3 min | 14,100 | 5,800 | $13.45 | $0.002 |
| How to Analyze NBA Stats with the NBA API | 6 min | 3,800 | 1,100 | $12.47 | $0.011 |
| Using Google Trends API with Python | 4 min | 4,300 | 1,930 | $7.58 | $0.004 |
| Easy Live Sports Odds: Google… | 3 min | 1,990 | 545 | $2.86 | $0.005 |
Pattern: Title contains an API name + “Python.” These are evergreen SEO magnets.
| Story | Length | Views | Reads | Earnings | $/Read |
|---|---|---|---|---|---|
| Jayson Tatum’s 2023 NBA Season | 3 min | 200 | 20 | $0.02 | $0.001 |
| Analyzing Dirk Nowitzki’s Career | 3 min | 286 | 63 | $0.03 | $0.000 |
| Luka Doncic’s Personal Foul History | 3 min | 229 | 24 | $0.04 | $0.002 |
| LeBron James Career-Year | 3 min | 103 | 21 | $0.00 | $0.000 |
| Anthony Davis Career Shooting | 3 min | 2 | 0 | $0.00 | — |
Pattern: Short player-specific analysis pieces earn nearly nothing. Low search volume, time-sensitive content, no “how-to” angle for SEO.
Stories ranked by revenue efficiency (how much each reader is worth):
| Story | Reads | Earnings | $/Read |
|---|---|---|---|
| How to Create a Dynamic Plotly Graphic | 47 | $1.48 | $0.031 |
| NFL Divisional Round Odds in Python | 56 | $1.50 | $0.027 |
| 2023 NBA Roster Heights and Weights | 94 | $2.33 | $0.025 |
| Unlocking Sports Betting with Python | 2,300 | $32.26 | $0.014 |
| How to Analyze NBA Stats with the NBA API | 1,100 | $12.47 | $0.011 |
| NBA Height and Weight Trends with BMI | 190 | $1.10 | $0.006 |
Insight: Some low-view stories have excellent $/read. The Plotly and NFL Odds pieces punch above their weight — if they had the traffic of a viral post, they’d be top earners.
| Period | Stories | Earnings | Avg $/Story |
|---|---|---|---|
| Jan 2023 | 4 | $8.92 | $2.23 |
| Feb 2023 | 2 | $13.45 | $6.73 |
| Aug 2023 | 2 | $0.08 | $0.04 |
| Nov 2023 | 5 | $5.69 | $1.14 |
| Dec 2023 | 12 | $46.66 | $3.89 |
| Jan 2024 | 9 | $7.81 | $0.87 |
| Jul 2024 | 1 | $0.31 | $0.31 |
| Sep-Oct 2024 | 3 | $1.77 | $0.59 |
| Feb 2025 | 1 | $0.26 | $0.26 |
| Mar 2025 – Feb 2026 | 0 | — | — |
The story of the data:
| Read Rate | Count | Example |
|---|---|---|
| 50%+ | 3 | College Football Portal P1 (54.7%), Jokic (51.9%) |
| 30–50% | 15 | Sports Betting (34.3%), Google Trends API (44.9%) |
| 15–30% | 14 | NBA Data Using APIs (41.1%), Dirk (22.0%) |
| Under 15% | 8 | Alabama/Georgia (5.0%), Tatum (10.0%), DL Waves (11.9%) |
Insight: Read rate doesn’t correlate strongly with earnings. “Analyzing NBA Data” has a 41% read rate and earns well — but so does “Sports Betting” at 34%. The real driver is volume of views (SEO traffic), not conversion rate.
| Length | Stories | Avg Views | Avg Reads | Avg Earnings | Avg Read Rate |
|---|---|---|---|---|---|
| 2–3 min | 15 | 1,250 | 400 | $1.29 | 32.0% |
| 4 min | 11 | 797 | 343 | $1.49 | 43.0% |
| 5–6 min | 7 | 987 | 263 | $2.44 | 26.6% |
| 7–8 min | 5 | 1,674 | 533 | $6.82 | 31.8% |
| 10–12 min | 2 | 358 | 146 | $0.32 | 40.8% |
Sweet spot: 6–8 minutes. Long enough to demonstrate depth (SEO loves this), short enough that readers finish. Your two biggest earners are both 6–8 min.
| Title | Min | Date | Views | Reads | Read % | Earnings | $/Read |
|---|---|---|---|---|---|---|---|
| Unlocking Sports Betting with Python | 8 | Dec 16, 2023 | 6,700 | 2,300 | 34.3% | $32.26 | $0.014 |
| Analyzing NBA Data Using Python and APIs | 3 | Feb 19, 2023 | 14,100 | 5,800 | 41.1% | $13.45 | $0.002 |
| How to Analyze NBA Stats with the NBA API | 6 | Dec 11, 2023 | 3,800 | 1,100 | 28.9% | $12.47 | $0.011 |
| Using Google Trends API with Python | 4 | Jan 8, 2023 | 4,300 | 1,930 | 44.9% | $7.58 | $0.004 |
| Easy Live Sports Odds: A Guide to Google… | 3 | Jan 3, 2024 | 1,990 | 545 | 27.4% | $2.86 | $0.005 |
| 2023 NBA Roster Heights and Weights | 4 | Nov 14, 2023 | 267 | 94 | 35.2% | $2.33 | $0.025 |
| Mastering Google Trends with Python | 4 | Oct 3, 2024 | 564 | 170 | 30.1% | $1.65 | $0.010 |
| NFL Divisional Round Odds in Python | 6 | Jan 18, 2024 | 137 | 56 | 40.9% | $1.50 | $0.027 |
| How to Create a Dynamic Plotly Graphic | 4 | Nov 16, 2023 | 157 | 47 | 29.9% | $1.48 | $0.031 |
| NBA Height and Weight Trends with BMI | 5 | Nov 16, 2023 | 1,100 | 190 | 17.3% | $1.10 | $0.006 |
| NBA Clutch Stats 2023 | 5 | Jan 16, 2024 | 1,600 | 293 | 18.3% | $0.95 | $0.003 |
| Flexible vs. Inflexible Statistical Learning | 4 | Jan 28, 2023 | 2,300 | 1,100 | 47.8% | $0.91 | $0.001 |
| NBA’s Streakiest 3 Point Shooters | 4 | Dec 15, 2023 | 573 | 165 | 28.8% | $0.78 | $0.005 |
| Lessons Learned from a Data Science… | 6 | Jan 9, 2024 | 159 | 64 | 40.3% | $0.68 | $0.011 |
| Unleashing Custom-GPTs on NBA Data | 8 | Jan 4, 2024 | 786 | 333 | 42.4% | $0.64 | $0.002 |
| The College Football Portal Analysis Part 1 | 4 | Dec 6, 2023 | 148 | 81 | 54.7% | $0.46 | $0.006 |
| 3 KNN Use Cases for Small Businesses | 2 | Jan 26, 2023 | 579 | 185 | 31.9% | $0.43 | $0.002 |
| Luka’s MVP Level Season | 3 | Dec 10, 2023 | 117 | 40 | 34.2% | $0.41 | $0.010 |
| Using Heat Maps with Seaborn on NBA data | 3 | Nov 20, 2023 | 316 | 48 | 15.2% | $0.39 | $0.008 |
| My First Custom-GPT | 3 | Nov 12, 2023 | 231 | 81 | 35.1% | $0.39 | $0.005 |
| College Football Talent Trends By School | 12 | Jan 10, 2024 | 498 | 237 | 47.6% | $0.32 | $0.001 |
| Exploring NBA Teams’ 2024 Statistical… | 10 | Dec 2, 2023 | 217 | 55 | 25.3% | $0.32 | $0.006 |
| Create an Animated Bar Chart Race | 4 | Jul 5, 2024 | 367 | 105 | 28.6% | $0.31 | $0.003 |
| 2023 in Review: My Data Science Journey | 7 | Jan 1, 2024 | 61 | 19 | 31.1% | $0.30 | $0.016 |
| Understanding the Bias-Variance Trade-off | 5 | Jan 27, 2024 | 87 | 26 | 29.9% | $0.29 | $0.011 |
| Deep Learning: Waves and Winters | 7 | Jan 31, 2024 | 101 | 12 | 11.9% | $0.27 | $0.023 |
| YFinance Tesla Analysis Using Quatro | 3 | Feb 23, 2025 | 111 | 34 | 30.6% | $0.26 | $0.008 |
| Nikola Jokic’s 2023 Season vs. MVP years | 3 | Dec 13, 2023 | 156 | 81 | 51.9% | $0.16 | $0.002 |
| CFB Data Recap: Tennessee vs. Oklahoma | 4 | Sep 27, 2024 | 20 | 5 | 25.0% | $0.12 | $0.024 |
| College Football Portal Part 2 | 6 | Dec 15, 2023 | 227 | 109 | 48.0% | $0.11 | $0.001 |
| Basics of Linear Regression and Accuracy | 2 | Jan 24, 2023 | 26 | 7 | 26.9% | $0.09 | $0.013 |
| Maryland Car Crashes | 4 | Aug 7, 2023 | 96 | 34 | 35.4% | $0.08 | $0.002 |
| Luka Doncic’s Personal Foul History | 3 | Dec 7, 2023 | 229 | 24 | 10.5% | $0.04 | $0.002 |
| Analyzing Dirk Nowitzki’s Career Shooting | 3 | Dec 9, 2023 | 286 | 63 | 22.0% | $0.03 | $0.000 |
| Jayson Tatum’s 2023 NBA Season | 3 | Dec 10, 2023 | 200 | 20 | 10.0% | $0.02 | $0.001 |
| Alabama Holds Off Georgia | 7 | Sep 30, 2024 | 20 | 1 | 5.0% | $0.00 | $0.000 |
| LeBron James Career-Year from Beyond… | 3 | Dec 8, 2023 | 103 | 21 | 20.4% | $0.00 | $0.000 |
| Anthony Davis Career Shooting Figures | 3 | Dec 9, 2023 | 2 | 0 | 0.0% | $0.00 | — |
| Maryland Car Crash Trends | 4 | Aug 8, 2023 | 27 | 13 | 48.1% | $0.00 | $0.000 |
| Using Plotly To Create Interactive Graphics | 2 | Feb 25, 2023 | 201 | 58 | 28.9% | $0.00 | $0.000 |
Write “How to [API] with Python” tutorials, not player profiles. The data is unambiguous. API tutorials earn 10-50x more than player analysis pieces.
Target 6-8 minute articles. This is the sweet spot for depth + completion rate.
Sports betting + Python is the #1 franchise. Three stories, $36.62 — nearly half of all lifetime revenue from 7.5% of stories.
Publish consistently or die. Dec 2023 (12 stories) earned more than the other 25 months combined. The last 12 months produced zero stories and declining zombie revenue.
Short player profiles are a trap. They feel easy to write but earn almost nothing. The 8 shortest player pieces combined earned $0.66 total.
Google Trends is an underrated franchise. Both Google Trends pieces performed well ($7.58 and $1.65). There’s room for more “Trends + Python” content.
Submit to publications. All 40 stories are self-published. Zero publication distribution. This is the biggest untapped lever.