Trámites de Tránsito MedellínSEO and development · Medellín, Colombia · 2026

Portfolio / Local capture and content

Nobody searches for paperwork. They search for a way out.

Whoever lands on this site has just been fined, discovered a lien on their car, or does not know whether the transfer they signed went through. They are frightened and in a hurry, which is the worst possible state for an expensive decision. We built a site that explains their case first and only then offers to talk: 6 services, 22 articles written around what people actually search for, and every button opening a WhatsApp that already knows what they came to ask about.

Client
Trámites de Tránsito Medellín
Sector
Vehicle paperwork advisory
Scope
Design, development, content and local SEO
Role
Architecture, build and deployment
Year
2026
The tramitestransitomedellin.com homepage with the headline “Tu trámite de tránsito, revisado con claridad” and the WhatsApp consultation button.

01The brief

A category crowded with men who know a guy.

Vehicle paperwork in Colombia is almost always settled by referral: someone knows someone who “can sort that out”. It is an informal market where the customer cannot tell a serious advisor from someone about to charge them for filing something they could have filed themselves, for free. Distrust is the default state.

The brief was to build the digital presence of an advisory that works the other way round: it reviews the case before charging, explains the alternatives, and says when hiring anyone at all is not worth it. That demands a site that educates first — and that promises no outcome, because the outcome is decided by the traffic authority, not by the advisor.

What the site had to do

  • 01Explain complex paperwork in plain language
  • 02Cover Medellín and the Aburrá Valley
  • 03Capture by search intent, not by brand
  • 04Lead to a human conversation, not a form
  • 05Promise no outcome it does not control
  • 06Run with no backend and no database

Our role

Site architecture, visual system, development in Astro, a content model with schema validation, editorial writing and structure, technical and local SEO, analytics instrumentation with consent, and automated deployment with link verification.

02The decisions

Three things this site deliberately does not do.

The architecture was defined by subtraction. Every piece not built is a piece that needs no maintenance, cannot break, and cannot leak — and in this business that matters more than one more feature.

01 · No backend

Static generation, full stop.

Astro compiles to HTML, CSS and JavaScript, and the host only serves flat files. No database, no API, no sessions, no SSR. The attack surface of a site that only hands over files is of a different order.

02 · No form that stores

The data does not pass through us.

The contact form POSTs nowhere: it assembles the message in the browser and hands it to WhatsApp. Name, municipality and case description travel into the conversation, not onto a server of ours. There is nothing to safeguard.

03 · No promises

The site does not decide the outcome.

A fine is voided or it is not, by the competent authority. The copy says that on every service page. Promising results would sell better and would make this the same operator the client wants to be told apart from.

03The rule

What set the tone of the whole site.

Explain before you charge.

The headline on the fines page does not say “we pay your ticket”. It says that receiving a ticket does not mean you should pay it immediately without reviewing your options. That is information the reader can use even if they never hire anyone — and that is exactly the point.

Every service and every article carries the same structure: what happened to you, what alternatives exist, what is required, what deadlines are running, and when it is worth asking for guidance. Conversion does not come from pressure. It comes from being the site that answered the question when they were alone with it at eleven at night.

ExplainGuideTalk

04Visual system

Paper and ink, with a green that only acts.

Paper

The site's base ground

HEX
#FAFAF9
RGB
250 · 250 · 249
Bone

Alternating bands that separate sections

HEX
#F3EFE9
RGB
243 · 239 · 233
Ink

Headlines and the two dark bands

HEX
#0F172A
RGB
15 · 23 · 42
Graphite

Secondary text and footnotes

HEX
#475569
RGB
71 · 85 · 105
Teal

The WhatsApp button and nothing else

HEX
#0D9488
RGB
13 · 148 · 136
Teal Light

Ground for notices and soft states

HEX
#F0FDFA
RGB
240 · 253 · 250

05Typography

Three families, served from the site's own domain.

Headlines and service names

DM Sans

Aa Bb Cc — 0123456789

Medium 500 · SemiBold 600 · Bold 700

Body text, requirement lists and buttons

Inter

Aa Bb Cc — 0123456789

Regular 400 · Medium 500 · SemiBold 600

The warnings and editorial notes

Lora

Aa Bb Cc — 0123456789

Regular 400 · Medium 500 · Italic

H1

Tu trámite de tránsito, revisado con claridad.

clamp(34–56) · -2% · 700
H2

Orientación clara para cada trámite

clamp(28–40) · -1% · 700
Service

Levantamiento de embargos y limitaciones

clamp(18–22) · 0 · 600
Body

We review the status of your fine, the options available, and the steps you can take depending on your case.

16 / 27 · 0 · 400
Warning

Before paying, signing or starting the process, confirm which documents and steps you need.

15 / 26 · 0 · 400 · serif

06Conversion

From a button to a WhatsApp that already knows.

There is not one hand-written WhatsApp link on the site. Every one is built by a function that takes the service, the origin of the click and the request type, and returns a message already drafted. Changing the number or the greeting happens once and travels to all thirteen buttons on the homepage.

  1. site.ts

    Phone, hours and messages
  2. Astro

    Pages and components
  3. whatsapp.ts

    Link builder
  4. tracking.ts

    Events with no personal data
  5. Consent Mode v2

    Measure only on consent
  6. WhatsApp

    The actual conversation
  1. 01

    They arrive with a question

    The visitor is not searching for the brand: they are searching for how to challenge a speed-camera fine in Medellín. Every article and every service is written around one of those specific searches.

  2. 02

    They read before deciding

    Explanation, requirements, steps, deadlines and frequently asked questions. The page settles the doubt even if the reader never writes — which is what makes them write.

  3. 03

    The button is where they are looking

    Header, hero, service card, article body, contact page and a fixed bar on mobile. Nobody has to hunt for how to get in touch: the conversion point travels with the reading.

  4. 04

    The message writes itself

    The builder takes the service and the origin, sanitises the number, encodes the text and returns the link. Whoever opens WhatsApp finds the message already written: they do not have to explain from scratch what they just read.

  5. 05

    The click is logged, not the person

    Events record the page, the button's position and the service. Never the plate, the ID number, the name or the form's text. And they are only sent if the visitor accepted the banner.

  6. 06

    A human answers

    That is where the site's job ends. Qualifying the case, judging viability and quoting are decided by the advisory in conversation, which is how they actually get decided in this category.

6 services · 22 articles · Medellín · Itagüí · Envigado · Sabaneta · Bello

07Local SEO and content

Twenty-two articles that start at the problem.

The blog is not there to publish: it is there to intercept the search before the competition does. Every piece was planned as a link in a chain — a concrete problem, an article explaining it, the related service, the conversation.

Intent

The titles are real questions.

The difference between a ticket, a speed camera and a photo-detection; the 50% and 25% discounts; what happens if you sold a car with fines outstanding; how a tax lien gets lifted. These are the searches someone makes with the problem in front of them.

Structure

Structured data on every template.

Verified one by one in production: the homepage serves WebSite · ProfessionalService · FAQPage · HowTo; each service, FAQPage · HowTo; each article, Article · FAQPage. The FAQs come out of the same text the person reads.

Territory

Coverage without inventing an address.

The site declares Medellín, Itagüí, Envigado, Sabaneta, Bello and the metropolitan area, and the map shows the city as a general zone. No physical address was published because the business had not confirmed one, and a false detail in local SEO is expensive.

08The pieces

The site in production, as it is walked.

09The work

What is published.

Figures from the deliverable, checked against the live site on 25 August 2026: the sitemap was walked URL by URL, and link verification runs on every deployment.

36
URLs in the sitemap, all serving 200
22
Articles with a validated content schema
840
Internal references verified on every build
0
External stylesheets: the CSS ships inline

10Build and deployment

Publishing should not be frightening.

The site deploys itself on a push to the main branch, but it does not deploy if something is wrong. Three gates stand before a file touches the server, and none of them depends on anyone remembering to check.

01 · Build

Astro compiles, or nothing ships.

GitHub Actions installs with npm ci, builds, and checks that the generated index exists. If the build does not produce 37 pages and their entry point, the run stops there.

02 · Links

Eight hundred and forty references.

Before the host is touched, every internal reference in the build is walked. On the latest verification: 840 checked, 0 broken. A dead link on a paperwork site is a lost enquiry.

03 · Sync

Only the result goes up.

The compiled output is synchronised over SSH against the public root, with credentials kept outside the repository. Source code, dependencies and internal documentation never ship.

11The status

Live, and with the list of what comes next.

tramitestransitomedellin.com is in production. All 36 sitemap URLs return 200, the custom 404 returns an actual 404, the document declares es-CO, there is not one external stylesheet, and all three typefaces are served from the site's own domain: zero Google Fonts requests on first load.

What comes next is written down: confirm the legal name and address so the legal pages can be closed off with their responsible party, have a specialist review the vehicle tax content, connect Search Console, and define the conversions in analytics. Plus one task that never ends in this category: revisiting the dates and figures in the articles every time a discount or a fee changes.

How it is built

  • 01Astro with static generation, no SSR
  • 02TypeScript in strict mode
  • 03Markdown content validated with Zod
  • 04Own CSS, inlined into every document
  • 05DM Sans, Inter and Lora self-hosted
  • 06Google Analytics 4 with Consent Mode v2
  • 07GitHub Actions and sync over SSH
  • 08Hostinger serving flat files

What this case does not claim

There are no traffic, enquiry, conversion or ranking figures. The site measures with consent and those numbers belong to the client; on top of that, the whole project was built on not promising what it does not control, and that holds for its own case study too.

More of the work

When the doubt is frightening, the site that settles it wins — not the one that exploits it.

Paperwork, health, legal, insurance: in categories where the customer arrives scared, over-explaining is the commercial strategy. Whoever answers the question for free is the one who gets the call.

Tell us about your project