Tehnički SEO: audit, schema markup i lokalni SEO

Tehnički SEO osigurava da pretraživači mogu da crawluju, renderuju, razumiju i vjeruju vašem sajtu prije nego što procijene ijednu riječ sadržaja. Možete objaviti odlične tekstove i stranice proizvoda, ali ako Google troši crawl na URL-ove filtera, izabere pogrešan canonical, ne može da renderuje JavaScript ili vidi sporu i nestabilnu stranicu, taj sadržaj neće rangirati onako kako zaslužuje.

U CodeWizu SEO radimo kao programeri. Provjeravamo kako je sajt izgrađen i kako se isporučuje, probleme rješavamo u kodu, šablonima i konfiguraciji servera umjesto da ostavimo listu preporuka koju niko ne provede, dodajemo strukturirane podatke koji otvaraju rich rezultate, popravljamo Core Web Vitals i postavljamo lokalni SEO za firme koje rade u određenom gradu ili regionu. Pošto sajtove i sami gradimo i hostujemo, ispravke završavaju tamo gdje trebaju: u temi, frameworku, CMS-u, CDN-u i na serveru.

Usluga je namijenjena online prodavnicama sa hiljadama URL-ova proizvoda i filtera, kompanijama pred redizajnom ili promjenom platforme, višejezičnim sajtovima za više zemalja, aplikacijama koje se jako oslanjaju na JavaScript (React, Vue ili Next.js) i lokalnim firmama koje žele da se pojave u map packu kad ih traže kupci u blizini.

SEO: Drveni bibliotečki katalog sa redovima označenih ladica

Tehnički SEO audit: crawling, renderovanje i indeksiranje

Tehnički SEO audit odgovara na tri pitanja: može li pretraživač da dođe do svake važne stranice, može li je ispravno da prikaže i bira li pravu verziju za indeks? Odgovor tražimo u nekoliko izvora, a ne u jednoj automatskoj ocjeni.

Šta provjeravamo

  • Pun crawl pomoću Screaming Froga ili Sitebula: status kodovi, lanci redirekcija, pokvareni interni linkovi, stranice bez ulaza, dubina klikova, duplirani naslovi i opisi, te tanke ili skoro iste stranice.
  • Search Console izvještaji o indeksiranju i statistici crawla, da vidimo koje URL-ove je Google otkrio, a nije indeksirao – i zašto.
  • Analiza serverskih logova da vidimo šta Googlebot zaista traži. Logovi često pokažu crawl potrošen na parametre, stare URL-ove ili internu pretragu.
  • Renderovanje: poređenje sirovog HTML-a sa renderovanim DOM-om, da sadržaj i linkovi koji postoje tek nakon izvršavanja JavaScripta ne ostanu nevidljivi.
  • Canonical, hreflang, robots.txt, meta robots i XML sitemap, provjereni da se ne sudaraju – na primjer canonical koji pokazuje na noindex stranicu, ili sitemap pun redirekcija.
  • Faceted navigacija i paginacija, koje na e-commerce sajtovima od nekoliko stotina proizvoda mogu napraviti milione kombinacija koje se mogu crawlati.

Kako izabrati pravu kontrolu indeksiranja

Mnogi problemi sa indeksom nastaju zato što se za posao koristi pogrešan alat. Ovo je podsjetnik koji primjenjujemo u auditu:

KontrolaŠta radiKoristite je zaNemojte je koristiti za
robots.txt DisallowZaustavlja crawling, ne indeksiranjeBeskonačne kombinacije filtera, internu pretragu, staging putanjeIzbacivanje stranica iz indeksa – Google može indeksirati blokiran URL i bez sadržaja
noindex (meta ili X-Robots-Tag)Drži stranicu dostupnu crawlu van indeksaStranice zahvale, tanke filter stranice, PDF preko HTTP zaglavljaStranice blokirane u robots.txt – Google nikad ne vidi oznaku
rel="canonical"Predlaže željeni URL među duplikatima (hint, ne naredba)Parametre praćenja, proizvode navedene u više kategorijaStranice sa stvarno različitim sadržajem, ili kao zamjenu za redirekciju
301 redirekcijaTrajno premješta URL i spaja signaleMigracije, promijenjene slugove, HTTP na HTTPS, spajanje wwwPrivremene promjene poput održavanja ili A/B testova
410 GoneSignalizira namjerno, trajno uklanjanjeUkinute proizvode i sadržaj bez zamjeneProizvode koji su trenutno rasprodati, a vratit će se

Rezultat je lista problema poredana po prioritetu, sa pogođenim URL-ovima, uticajem na poslovanje i tačnom ispravkom – a ako želite, te ispravke i sami provedemo. Googleova Search Central dokumentacija nam je osnova za ono što pretraživači zvanično podržavaju.

Schema markup i strukturirani podaci

Schema markup opisuje sadržaj rječnikom sa schema.org koji mašine razumiju, pa pretraživač zna da je stranica proizvod sa cijenom i dostupnošću, članak sa autorom i datumom, ili lokalna firma sa radnim vremenom. Ispravni strukturirani podaci čine stranicu podobnom za rich rezultate – isječke proizvoda sa cijenom i stanjem zaliha, breadcrumb, zvjezdice recenzija, detalje događaja – koji zauzimaju više mjesta u rezultatima i privlače više klikova.

Tipovi koje najčešće implementiramo

  • Organization i WebSite za podatke o brendu, logo i profile na društvenim mrežama.
  • LocalBusiness (ili precizniji podtip) sa adresom, koordinatama, radnim vremenom i područjem koje pokrivate.
  • Product, Offer i AggregateRating za online prodavnice, plus detalje dostave i povrata gdje su podržani.
  • Article i BreadcrumbList za blog, vijesti i dokumentaciju.
  • Event, JobPosting, SoftwareApplication i Course tamo gdje sadržaj zaista odgovara tipu.

Koristimo JSON-LD, format koji Google preporučuje, generisan iz vaših stvarnih podataka, a ne upisan ručno. Minimalan LocalBusiness blok, u script elementu tipa application/ld+json, izgleda ovako:

{ "@context": "https://schema.org", "@type": "LocalBusiness", "name": "Example Bakery", "url": "https://example.com/", "telephone": "+387 51 000 000", "address": { "@type": "PostalAddress", "streetAddress": "Example Street 1", "addressLocality": "Banja Luka", "postalCode": "78000", "addressCountry": "BA" }, "geo": { "@type": "GeoCoordinates", "latitude": 44.77, "longitude": 17.19 }, "openingHours": "Mo-Sa 07:00-20:00" }

Pravila kojih se držimo

  • Markup mora odgovarati vidljivom sadržaju. Označavanje recenzija, cijena ili FAQ-a koje korisnik ne vidi rizik je ručne kazne.
  • Pratimo aktuelna pravila podobnosti: od 2023. Google prikazuje FAQ rich rezultate samo malom skupu autoritativnih državnih i zdravstvenih sajtova, a HowTo rich rezultati su ukinuti, pa ih ne prodajemo kao brzu pobjedu.
  • Svaki šablon provjeravamo Googleovim Rich Results Testom i Schema Markup Validatorom, zatim pratimo enhancement izvještaje u Search Consoleu.
  • U WordPressu proširujemo ono što Yoast ili Rank Math već generišu, umjesto da to dupliramo; u Laravelu i Node.js-u JSON-LD gradimo iz istih modela koji renderuju stranicu.
Laptop na stolu sa nekoliko analitičkih grafikona na ekranu

Core Web Vitals i iskustvo stranice za SEO

Core Web Vitals su Googleove metrike stvarnog iskustva korisnika: Largest Contentful Paint (učitavanje), Interaction to Next Paint (odziv, koji je u martu 2024. zamijenio First Input Delay) i Cumulative Layout Shift (vizuelna stabilnost). Google ih koristi u sistemima rangiranja kao dio iskustva stranice. Neće podići slab sadržaj iznad jakog, ali kad su stranice podjednako relevantne, brza i stabilna ima prednost – i mnogo bolje pretvara posjetu u radnju.

Kako pristupamo Core Web Vitalsima u SEO projektima

  • Krećemo od field podataka iz Search Console izvještaja Core Web Vitals i iz CrUX-a, jer rangiranje koristi podatke stvarnih korisnika na 75. percentilu, a ne jednokratni Lighthouse rezultat.
  • URL-ove koji padaju grupišemo po šablonu – stranica proizvoda, kategorija, članak – jer jedna ispravka u šablonu obično popravi hiljade URL-ova odjednom.
  • Rješavamo uobičajene uzroke koji kvare SEO: hero slike koje kasne, pomjeranje layouta zbog oglasa, banera i web fontova, i teške skripte trećih strana koje kvare INP.
  • Rezultat provjeravamo u field podacima tokom sljedećeg prozora od 28 dana, a ne samo u laboratoriji.

Naš sajt, codewizdev.com, ima 100/100/100/100 na PageSpeed Insightsu, i na mobilnom i na desktopu. Tehnike iza tog rezultata opisane su u tekstu kako CodeWiz postiže 100/100 page vitals. Kad je usko grlo dublje – spor server, nedostaje keširanje, teški upiti nad bazom – to prelazi u našu optimizaciju performansi.

Lokalni SEO za firme koje rade u jednom gradu ili regionu

Lokalni SEO pomaže kupcima u blizini da vas nađu kad traže “stomatolog u blizini”, “automehaničar Banja Luka” ili “web agencija Sarajevo”. Takve pretrage iznad organskih rezultata prikazuju map pack, a vidljivost tu zavisi od relevantnosti, udaljenosti i ugleda – signala na koje možete uticati.

Šta ulazi u lokalni SEO

  • Google Business Profile: tačne primarne i sekundarne kategorije, usluge, radno vrijeme, fotografije, redovne objave i proces traženja i odgovaranja na recenzije.
  • Usklađeni NAP podaci (naziv, adresa, telefon) na sajtu, Business Profileu, Apple Business Connectu, Bing Placesu i regionalnim poslovnim imenicima.
  • Stranice lokacija sa stvarno lokalnim sadržajem za svaku poslovnicu ili područje rada, umjesto tankih kopija u kojima je samo zamijenjen naziv grada.
  • LocalBusiness schema na sajtu koja se poklapa sa Business Profileom.
  • Lokalni linkovi i pominjanja od privrednih komora, partnera, sponzorstava i lokalnih medija.

Za firme u Bosni i Hercegovini, Srbiji, Hrvatskoj i Crnoj Gori lokalni SEO se često preklapa sa jezikom: jedan tekst za više tržišta, različiti domeni po zemljama i kupci koji pretražuju latinicom bez dijakritika. Strukturu URL-ova, hreflang i sadržaj planiramo prema tome kako vaši kupci zaista traže.

JavaScript SEO za React, Vue i Next.js sajtove

Google može da renderuje JavaScript, ali je renderovanje odgođeno, skupo i krhko. Ako se naslovi, canonicali, interni linkovi ili podaci o proizvodu pojave tek nakon renderovanja na klijentu, indeksiranje postaje sporo i neujednačeno – a drugi pretraživači i AI crawleri JavaScript možda uopšte ne izvršavaju. Radije biramo server-side rendering ili statičko generisanje (Next.js, Nuxt, Astro), prave <a href> linkove umjesto click handlera, jedinstvene metapodatke renderovane na serveru i ispravne HTTP status kodove za stranice koje ne postoje, umjesto “soft 404”. Dinamičko renderovanje je zaobilaznica koju Google više ne preporučuje, pa nove sajtove ne gradimo oko nje.

Međunarodni i višejezični SEO

Višejezičnom sajtu treba da svaka jezička verzija bude pronađena i ispravno uparena. Hreflang postavljamo u HTML head, HTTP zaglavlja ili XML sitemap, uvijek sa povratnim linkovima i x-default rezervom:

<link rel="alternate" hreflang="en" href="https://example.com/services/" /> <link rel="alternate" hreflang="bs" href="https://example.com/bs/usluge/" /> <link rel="alternate" hreflang="x-default" href="https://example.com/services/" />

Biramo i između poddirektorijuma, poddomena i domena po zemljama, izbjegavamo automatske redirekcije po IP adresi koje skrivaju sadržaj od crawlera, i prevodimo slugove, naslove i strukturirane podatke – ne samo tekst u tijelu stranice.

SEO pri redizajnu i migraciji sajta

Redizajn, novi domen ili prelazak na drugi CMS najčešći su način da firma preko noći izgubi organski saobraćaj. Pozicije čuvamo punim crawlom starog sajta, mapom redirekcija jedan-na-jedan za svaki URL koji ima saobraćaj ili linkove, sačuvanim naslovima i strukturiranim podacima, staging okruženjem koje je blokirano za indeksiranje (i otključano na dan puštanja), te crawlom nakon puštanja i praćenjem u Search Consoleu sedmicama poslije prelaska.

Mjerenje rezultata tehničkog SEO-a

Pratimo šta se mijenja nakon ispravki: indeksirane stranice naspram poslatih, crawl zahtjevi prema važnim naspram uzaludnih URL-ova, prolaznost Core Web Vitalsa, prikazi rich rezultata, te organski klikovi i konverzije po šablonu u Search Consoleu i GA4. Za dublje istraživanje ključnih riječi, analizu konkurencije i strategiju pretrage pogledajte tekst o naprednoj SEO analitici i analizi konkurencije. Online prodavnice mogu naći savjete po platformama u našem vodiču za optimizaciju e-commercea.

Pogled odozgo na stari kompas koji leži na papirnoj mapi

Najčešće greške u tehničkom SEO-u koje ispravljamo

  • Staging sajt indeksiran u Googleu, ili živi sajt pušten sa i dalje uključenom opcijom “Discourage search engines”.
  • Blokirani CSS i JavaScript u robots.txt, pa Google ne može da renderuje stranicu kako treba.
  • Canonical oznake koje sve pokazuju na početnu, ili na URL-ove koji preusmjeravaju.
  • Parametri filtera i sortiranja koji prave beskonačne crawlabilne duplikate stranica kategorija.
  • Redizajn pušten bez redirekcija, pa se godine backlinkova pretvore u 404 greške.
  • Strukturirani podaci kopirani iz demo plugina koji ne odgovaraju sadržaju stranice.
  • Hreflang oznake bez povratnih linkova, ili koje pokazuju na preusmjerene i noindex URL-ove.

Kako radimo

  1. Upoznavanje: saznajemo poslovne ciljeve, tržišta i stranice koje su prioritet, te dobijamo pristup Search Consoleu, analitici i serverskim logovima.
  2. Audit: crawlujemo sajt, analiziramo logove i renderovanje, i pregledamo šablone, strukturirane podatke, Core Web Vitals i lokalne unose.
  3. Plan: dobijate mapu rada poredanu po prioritetu, sa uticajem i obimom svake ispravke.
  4. Provođenje: probleme rješavamo direktno u kodu, šablonima, podešavanjima CMS-a, na serveru i u konfiguraciji CDN-a – prvo na stagingu.
  5. Provjera: ponovo crawlujemo, testiramo strukturirane podatke i tražimo ponovno indeksiranje ključnih stranica.
  6. Praćenje: pratimo indeksiranje, rich rezultate, Core Web Vitals i organski saobraćaj, i hvatamo nazadovanje nakon budućih izdanja.

Zašto CodeWiz

  • Programeri, ne samo konsultanti: ispravke sami unosimo u WordPress, Laravel, Node.js i moderne JavaScript frameworke.
  • Performanse su dio posla: naš sajt ima 100/100/100/100 na PageSpeed Insightsu, a brzina je nešto čime se bavimo svaki dan.
  • Cijeli stack: CMS, serveri, Cloudflare i analitika u jednom timu, pa tehnički SEO problemi ne padaju između dobavljača.
  • Iz Banje Luke, za klijente svuda: radimo na daljinu lokalno i međunarodno, a i naš sajt radi na engleskom i na BHS jeziku.
  • Fer cijene: vrhunski razvoj bez vrhunskih cijena – više na stranici o CodeWizu.

Često postavljana pitanja

Koliko koštaju usluge tehničkog SEO-a?

Zavisi od veličine i složenosti sajta. Audit malog poslovnog sajta je kompaktan posao; velika online prodavnica sa faceted navigacijom, više jezika i migracijom pred sobom traži znatno više rada. Jasnu procjenu dajemo nakon početnog pregleda.

Koliko treba čekati na rezultate tehničkog SEO-a?

Ispravke poput odblokiranja stranica, ispravke canonicala ili popravke redirekcija mogu se vidjeti za nekoliko dana do nekoliko sedmica, čim Google ponovo obiđe pogođene URL-ove. Šira poboljšanja obično se grade mjesecima, a field podaci za Core Web Vitals se osvježavaju u kliznom prozoru od 28 dana.

Koja je razlika između tehničkog SEO-a i on-page SEO-a?

Tehnički SEO pokriva kako je sajt izgrađen i kako se isporučuje – crawling, indeksiranje, renderovanje, brzinu, strukturirane podatke i arhitekturu. On-page SEO pokriva sadržaj svake stranice – teme, naslove, tekst i interne linkove. Oba su potrebna; tehnički SEO čini da se dobar sadržaj uopšte može pronaći.

Da li schema markup direktno poboljšava rangiranje?

Strukturirani podaci nisu direktan poticaj rangiranju, ali pomažu pretraživačima da razumiju sadržaj i čine stranice podobnim za rich rezultate, što obično podiže stopu klikova. Da bi bili bezbjedni, moraju odgovarati onome što korisnik vidi.

Možete li raditi SEO za sajt koji niste vi napravili?

Možemo. Tehnički SEO vrlo često znači rad na postojećem sajtu koji je gradio drugi tim, na WordPressu, WooCommerceu, Shopifyu, Laravelu ili custom frameworku. Ispravke prilagođavamo vašem stacku i možemo se uskladiti sa vašim trenutnim programerima.

Spremni da uklonite ono što koči vaše pozicije?

Recite nam nešto o sajtu, tržištima i stranicama koje su vam najvažnije, a mi ćemo naći tehničke probleme koji stoje između sadržaja i rezultata pretrage. Kontaktirajte nas da krenemo od tehničkog SEO audita, ili pogledajte naše usluge SEO optimizacije.