Skip to main content

[verdict][curated prompt][source: lnkflow.io]

Can I vibecode LnkFlow?

// buildable in a weekend, but real gaps stay open

A short link that 302s, logs the click, and injects UTMs is genuinely one sitting on Cloudflare Workers and KV, and the prompt below builds exactly that. What is not one sitting is the loop back out to the ad platforms. Meta and Google bid against the conversion events you send them, and since ATT the browser pixel misses a large share of purchases, which is the entire reason the Conversions API and offline conversion import exist. Closing that loop means persisting fbclid and gclid at redirect time, carrying that identity to a sale that happens days later on another device, posting a Purchase with a stable event_id so it deduplicates against the pixel, rebuilding fbc in Meta's fb.1.{timestamp}.{fbclid} form, importing offline conversions to Google on gclid, gbraid, or wbraid, and reversing all of it on refund. Every one of those fails silently. That is the expensive part: the dashboard still shows clicks while the bidder optimizes against nothing.

confidence: high

what it is: Branded short links with server-side click tracking and conversion attribution back to ad platforms

Buildability index · an editorial game

  • Price 10 $/month weight: plus 1
  • Time one sitting weight: plus 3
  • Category analytics no weight
  • Moat integrations · infrastructure scale weight: minus 3
  • Confidence high weight: plus 1
  • What you lose 5 items weight: minus 2
  • Site lnkflow.io (si apre in una nuova scheda) no weight
Indice: zero. a toss-up

They cancel out. This is where it comes down to how much the subscription annoys you.

Gioco editoriale: il verdetto dice se un agente può, l’indice se conviene.

What you build

Resolve a slug to a destination at the edge, log the click, inject UTMs, pass ad click ids through untouched, and 302.

what you need

  • Cloudflare account (Workers, KV, D1)
  • a domain you control
  • wrangler CLI

The redirector is a one-sitting build · the loop back into Meta and Google ad accounts is the actual product.

The prompt

A weekend with a coding agent. The gaps that stay are right below, under “what you lose”.

One-shot prompt EN
Build me a branded link shortener with click tracking to replace LnkFlow. Requirements:

- Cloudflare Workers via wrangler: KV for the slug lookup, D1 for the click
  log. Free tier, nothing to babysit.
- A worker on lnk.mydomain.com/{slug} reads KV, writes the click to D1 inside
  ctx.waitUntil so the redirect never waits, then 302s with X-Robots-Tag:
  noindex and Cache-Control: no-store.
- Inject UTM params at redirect time from the link's KV record, and pass
  incoming fbclid, gclid, gbraid, wbraid, and msclkid through to the
  destination untouched.
- Log per click: slug, timestamp, country from request.cf, user-agent,
  referer, and those ad click ids. Skip bot user-agents from a pattern list
  in one file.
- An /admin page behind one password (wrangler secret) to create links and
  show clicks per link per day as a plain table.
- Secrets via wrangler secret, never in wrangler.toml. No accounts, no
  third-party analytics, no telemetry.
- Out of scope: posting Purchase events back to Meta CAPI or Google offline
  conversion import · stable event_id for pixel dedup, fbc as
  fb.1.{timestamp_ms}.{fbclid}, and refund reversal. A silently wrong
  conversion feed is worse than none.
- Out of scope: TLS for domains I do not own. My own subdomain is one DNS
  record · a client's domain means Cloudflare for SaaS and DCV renewals.
- README: wrangler setup, the KV namespace and D1 database, the DNS record,
  and adding the first link.

Curated prompt: written and reviewed by hand for this app. In English on purpose — it is the language coding agents work best in.

What you lose

  • Purchase events delivered back to Meta CAPI with stable event_id deduplication against the browser pixel
  • Google offline conversion import keyed on gclid, gbraid, or wbraid
  • click to lead to sale attribution that survives a multi-day gap, with refund reversal
  • TLS on a customer's branded domain (Cloudflare for SaaS and 90-day DCV renewals, not one DNS record)
  • per-creator performance and commission reporting

Why people still pay

The redirect is commodity and nobody should pay much for it. What is not commodity is staying current with Meta and Google as they change conversion endpoints, identifier formats, and consent requirements, which they do continuously and without waiting for you. Paying outsources that upkeep plus the attribution store that connects a click to a sale days later on a different device. Agencies pay for a second reason: issuing and renewing TLS for a client's branded domain is a genuinely different problem from pointing your own DNS record at a worker.

moat: Integrations Infrastructure scale what a moat is

ad-platform integration upkeep

Who has already built it

Starting from here is still vibecoding: the prompt is for when you want it exactly your way.

Do you agree?

The vote balance

Ancora nessun voto: il tuo è il primo.

Nessun voto ancora — il primo pesa.

Related apps

From a Confusing Brief to a Complete UX/UI A vague brief becomes a navigable app. Product Ad From a Single Photo A photo becomes an animated ad, no code required. Get Claude to Watch Your Videos Claude watches your videos and turns them into text. Higgsfield Inside Claude Code Generate images and video while you code in Claude Code. Turn a Loom Recording Into a Web Page A screen recording becomes a web page, no code. Vertical Shorts With NotebookLM Your sources become a vertical short. Luxury Landing Pages on Lovable A luxury landing page from a single prompt. Excalidraw Running Locally Excalidraw free on your computer, no code. Mistral OCR in Your Workflow Extract text from documents with Mistral OCR. Claude SEO in the Terminal 25 free SEO skills inside Claude Code. Google Search Console inside Claude Code Search Console data inside your terminal. Claude Code Routines Claude working on its own, computer off. Clone a Landing Page in React With v0 Clone a real landing page into React code. Context Economy With Claude Work light and don't burn through Claude's limits. From Prompt to Self-Improving Skill Claude skills that learn from your mistakes. From NotebookLM to Canva: Presentations NotebookLM slides, finally editable in Canva. The Map for Understanding Every AI Tool 12 categories for placing any AI tool. Transparent PNGs With ChatGPT Real transparency, not a fake checkerboard. Animated Infographics With Gemini Infographics that loop, animated with Gemini. Market Research With Deep Research Deep Research as your market analyst. Get Cited by AI Search Engines (AEO) Become a source that ChatGPT and Perplexity cite.