Sveio ligger på en halvøy, og har en lang kystlinje med mange små fjorder og viker, hvor de to største er Førdespollen og Viksefjorden. Landskapet i kommunen er nokså variert. I sør er det stort sett småkupert og skifter mellom innmark og store utmarksvidder, mens den på nordre delen av halvøya domineres av mer fjell og barskog. I nord finner man også kommunens høyeste punkt, Trollavassnipen, som strekker seg 432 meter over havet.