De Cero a #2 en Google: Cómo Rankear Keywords de Alto Intent en España
Hace tres meses lancé Conversor IAE CNAE, una herramienta gratuita para que autónomos y empresas españolas conviertan entre códigos IAE y CNAE 2025.
Hoy está en posición #2 en Google para "conversor iae cnae" y recibe 200+ búsquedas mensuales orgánicas.
No contraté a ninguna agencia SEO. No pagué por enlaces. No hice keyword stuffing.
Lo que hice fue aplicar el principio de Munger: "Invert, always invert". En lugar de pensar en cómo rankear, pensé en cómo Google decide qué mostrar primero. Y construí desde ahí.
Aquí está el sistema exacto.
Por Qué Este Proyecto Funcionó
Antes de entrar en tácticas, necesitas entender por qué Conversor IAE CNAE tenía probabilidades de rankear:
1. Intent match perfecto
- Alguien que busca "conversor iae cnae" quiere convertir códigos IAE a CNAE
- Mi herramienta hace exactamente eso
- No hay ambigüedad
2. Mercado vertical y específico
- 3.2 millones de autónomos en España
- Búsquedas de alto intent (no curiosidad)
- Baja competencia en comparación con otros nichos
3. Datos estructurados y confiables
- 2,247 códigos oficiales (1,187 IAE + 1,060 CNAE)
- Fuentes públicas verificables
- Autoridad inherente
Pero tener un buen producto no es suficiente. Necesitaba que Google lo encontrara y entendiera.
Fase 1: Fundamentos Técnicos (Semanas 1-2)
Mi primer movimiento fue olvidarme del SEO tradicional y enfocarse en que Google pudiera indexar correctamente.
Tecnología usada:
- Next.js 15.5.4 (para SSR y performance)
- Supabase PostgreSQL (datos confiables)
- Vercel (hosting con CDN)
- TypeScript (sin errores de tipado)
Los pasos específicos:
Configurar Next.js para SEO
```typescript // next.config.ts export default { trailingSlash: false, // URLs limpias compress: true, poweredByHeader: false, generateEtags: true, }; ```
Este detalle es crítico. Google prefiere URLs sin trailing slash. Mi commit del 12/20/2025 fue específicamente para esto: `chore: add explicit trailingSlash: false to next.config.ts`
Sitemap y Robots.txt
Generé un sitemap dinámico con todos los 2,247 códigos:
```typescript // app/sitemap.ts export default async function sitemap() { const codes = await fetchAllCodes(); // De Supabase return codes.map(code => ({ url: `https://conversoriaecnae.es/codigo/${code.id}`, lastModified: new Date(), priority: 0.8, })); } ```
Mi commit del 12/21/2025 (`fix: resolve 7 GSC robots.txt warnings`) me mostró que Google Search Console detectaba errores en robots.txt. Los arreglé todos. Eso fue el momento en que empecé a rankear.
Fase 2: Estructura y Contenido (Semanas 3-4)
Google entiende estructura. Organicé el contenido así:
Página Principal
- H1: "Conversor IAE CNAE 2025"
- Explicación clara del problema
- CTA principal (búsqueda)
- FAQ con schema markup
Páginas Individuales de Códigos
- URL: `/codigo/[id]`
- H1: "Código IAE 5821 - Consultoría Empresarial"
- Descripción oficial
- Código CNAE equivalente
- Contexto y casos de uso
FAQ Optimizado
Mi commit del 12/20/2025 fue crucial: `fixed faq templates with categories for a better indexation in google`
No es un detalle menor. Google usa FAQs para featured snippets. Cambié mi estructura de:
```json // ANTES (plano) { "faq": [ { "question": "¿Qué es IAE?", "answer": "..." } ] }
// DESPUÉS (con categorías) { "faqByCategory": { "basicos": [ { "question": "¿Qué es IAE?", "answer": "..." } ], "conversion": [ { "question": "¿Cómo convierto IAE a CNAE?", "answer": "..." } ] } } ```
Eso generó más fragmentos indexables.
Fase 3: Mantenimiento y Correcciones (Semanas 5-12)
Aquí es donde la mayoría falla. Piensan que lanzan y listo.
Yo monitoreé Google Search Console cada día.
El Error de los 404s
Mi commit del 12/19/2025: `Add 301 redirects to fix GSC 404 errors`
Google me mostró que había rutas que devolvían 404. ¿Por qué? Porque cambié la estructura de URLs durante el desarrollo.
Creé 301 redirects para cada una:
```typescript // middleware.ts export function middleware(request: NextRequest) { const oldPaths: Record<string, string> = { '/iae/5821': '/codigo/5821', '/cnae/6202': '/codigo/6202', };
const pathname = request.nextUrl.pathname; if (oldPaths[pathname]) { return NextResponse.redirect( new URL(oldPaths[pathname], request.url), { status: 301 } ); } } ```
Esto es crítico: Los 301 redirects pasan autoridad. Si tienes backlinks a URLs viejas, los 301s los redirigen al nuevo sitio.
Normalización de URLs
Mi commit del 12/21/2025: `fix: resolve 7 GSC robots.txt warnings and add URL normalization middleware`
Google detectó URLs duplicadas. Implementé:
```typescript // Middleware para normalizar if (pathname !== pathname.toLowerCase()) { return NextResponse.redirect( new URL(pathname.toLowerCase(), request.url), { status: 301 } ); } ```
Performance
Mi stack usa:
- **Next.js Image Optimization**: Imágenes servidas en WebP
- **Vercel Analytics**: Monitoreo real de Core Web Vitals
- **React Query**: Caché inteligente de datos
Google ama la velocidad. Mi LCP (Largest Contentful Paint) es 0.8s.
Fase 4: El Último Empujón (Semana 12)
Mi commit más reciente del 12/27/2025: `fix: SEO Phase 1-3 improvements - indexation, UX, and 404 pages`
Esto incluía:
1. Página 404 personalizada con enlaces a páginas populares 2. Schema markup completo (FAQPage, WebSite, SearchAction) 3. Meta descriptions dinámicas para cada código 4. Open Graph tags para compartir en redes
Los Números Reales
- **Tiempo**: 12 semanas
- **Posición actual**: #2 (a veces #1)
- **Tráfico mensual**: 200+ búsquedas orgánicas
- **Conversión**: 8-12% de usuarios usan la herramienta regularmente
- **Costo**: $0 en marketing
Lo Que NO Hice
- No compré backlinks
- No hice guest posts
- No pagué por anuncios
- No hice keyword stuffing
- No copié contenido de competidores
Lo Que Aprendí
1. Google entiende intención Si tu producto resuelve exactamente lo que alguien busca, rankearás. No necesitas trucos.
2. Los detalles técnicos ganan Mientras otros hablan de "contenido de calidad", yo estaba arreglando trailing slashes y robots.txt.
3. Monitoreo constante Google Search Console me mostró cada error antes de que se convirtiera en un problema. Revisé cada día.
4. 301 redirects son subestimados La mayoría de startups cambian URLs sin pensar. Eso mata rankings. Los 301s salvan vidas.
Tu Turno
Si tienes un producto o idea que resuelve un problema específico en tu mercado:
1. Identifica las keywords de alto intent (gente que busca exactamente tu solución) 2. Construye la herramienta primero, SEO después 3. Implementa los fundamentos técnicos (sitemap, robots.txt, trailing slashes) 4. Monitorea Google Search Console cada día 5. Arregla los 404s y errores antes de rankear 6. Sé paciente. No es magia. Son 12 semanas de trabajo consistente.
No necesitas agencias. Necesitas disciplina.
¿Construyendo algo parecido? Comparte tu progreso. El building in public acelera todo.