SnowForge · Writing
Field notes on feeds, data, and small software.
I’m Alex Diaz. I’ve spent a decade in e-commerce operations, and I build small software tools solo on nights and weekends. This is where I publish what I know: product feed and Google Merchant Center operations, responsible web scraping, and the reality of running a handful of apps alone. No fluff, no gated “ultimate guides” — just the working notes I wish I’d had.
New writing lands here regularly. About the studio & the tools →
Latest · 2026-07-06
Automating content without shipping slop: the quality gates that matter
Volume is the easy part of an automated content pipeline. The gates that keep it from producing forgettable slop are what make it worth running.
Read the article →All writing
2026-07-05
Shopify to Google Merchant without an app: what breaks and what to watch
You can connect Shopify to Google Merchant Center with no third-party app. Here is exactly where the no-app path falls down.
Read →2026-07-04
Why your scraper keeps getting blocked
Blocks are rarely random. Sites block behavior, not scraping. Fix the behavior and most of them disappear.
Read →2026-07-03
Your OpenAPI spec is shipping a dead base URL
The servers block is part of your API product, not an afterthought. Two traps make it point nowhere, and both ship silently.
Read →2026-07-02
The Merchant Center 'Misrepresentation' flag is about your storefront, not your feed
The most feared account-level suspension and the most misdiagnosed. It almost never comes from the feed. Here is the storefront checklist.
Read →2026-07-01
Supplemental feeds, done right: patching a primary feed without breaking it
A supplemental feed is a scalpel for fixing specific fields. Used as a second primary, it becomes a source of conflicts. Here is the line.
Read →2026-06-30
CSS selectors, XPath, or an LLM: choosing how to extract
Three ways to pull structured data off a page, each with a real sweet spot. Here is how to pick without overpaying or over-engineering.
Read →2026-06-29
The dependency that works locally and breaks only in production
A heavyweight import that passes every test and fails on the first real request in a Lambda. Why it happens, and how to keep serverless code light.
Read →2026-06-28
Running seven apps solo: the systems that make it survivable
One person, seven apps, nights and weekends. It only works because of systems, not heroics. Here are the ones that carry the weight.
Read →2026-06-27
GTIN, MPN, and brand: the identifier rules that get products disapproved
The identifier_exists and invalid-GTIN disapprovals decoded, with the decision tree for when each identifier is required, optional, or correctly absent.
Read →2026-06-26
The polite, legal way to scrape public web data
Most web scraping is legitimate. The difference between responsible data collection and getting banned is in how you do it.
Read →2026-06-25
Fixing 'price mismatch' disapprovals for good (currency, tax, and sale timing)
The three real causes of price-mismatch disapprovals, how Google actually compares your feed against the landing page, and how to make them agree.
Read →2026-06-24
Faceless video pipelines: what scales and what just burns money
Automated short-form video is sold as passive income. The pipeline is real, but the cost cliffs are not where people expect.
Read →2026-06-23
google_product_category vs product_type: which one actually affects your ads
One is Google’s taxonomy and one is yours. Here is what each field really does, and how miscategorization quietly tanks performance.
Read →2026-06-22
How often should your product feed actually refresh?
More often is the wrong default. The right cadence depends on what changes, what the channel does with it, and what it costs you.
Read →2026-06-21
Custom labels for Shopping campaigns: a segmentation scheme that scales
How to use custom_label_0 through custom_label_4 for margin, season, and velocity bidding without turning your feed into a mess of one-off flags.
Read →2026-06-20
NBA injury reports as a market signal: what the data does and does not say
Injury designations carry real information, but the edge is in the timing and the noise, not the obvious headline.
Read →2026-06-19
Shopify metafields to product feed attributes: the mapping that actually works
Piping Shopify metafields into material, color, size, age_group, and GTIN feed fields cleanly, including the traps that break the mapping.
Read →2026-06-18
A field-by-field anatomy of a Google Shopping product feed
What every required and recommended attribute actually does, and the gotcha hiding in each one.
Read →2026-06-16
Scanning a Magic: The Gathering collection with a phone camera: the OCR reality
Reading a card name off a phone camera sounds trivial. The edge cases are where a collection scanner actually lives or dies.
Read →2026-06-14
One product feed, three rule sets: Google, Meta, and TikTok
You build the feed once, but Google Shopping, Meta Commerce, and TikTok each reject it for different reasons. Here is where the rules actually diverge.
Read →2026-06-12
Reading the League of Legends meta from match data, not vibes
Win rate, pick rate, and ban rate tell a real story, but only if you read them with sample size, rank, and patch timing in mind.
Read →2026-06-10
The Google Merchant Center disapprovals that quietly cost you sales
Five disapproval reasons account for most of the lost revenue in Merchant Center. Here is what each one really means and the fix that actually scales.
Read →2026-05-10
The cost of indie cloud: my real bill across 7 apps
Real numbers from a seven-app portfolio in May 2026, the three incidents that drove the bill up, and the fixes that brought it back down.
Read →2026-05-06
Audit your product feed before you push it
Most GMC disapprovals are preventable if you audit the feed before you push it. Here is the eight-check list I use on real catalogs.
Read →2026-04-18
Why I’m building SnowForge from a day-job desk
A small studio, a handful of apps, and a slow build towards software I’m genuinely excited to maintain.
Read →2026-04-19
Why product feeds break, and how to stop patching them
Ten years of Shopify and Google Merchant pipelines taught me that the bugs are always in the same three places.
Read →2026-04-20
How SnowFort tracks the Fortnite shop (and why the math matters)
Item rotation patterns, V-Buck price drift, and why a shop tracker only earns trust if the data is honest.
Read →
The tools behind the notes
SnowForge also builds software.
These essays come out of building and running a small suite of tools for e-commerce, web data, and the games I love. If you came for the software rather than the writing, start here.