so, I have a minisite for the mobile application that I did. The mobile application is a public transport (transit) schedule viewer for a particular city (let's call it Foo), and I'm trying to sell it via that minisite.

I publish that minisite in www.myawesomeapplication.com/foo/. It has the usual "standard" subpages, like "About", "Compatible phones", "Contact", etc.

Now, I have decided to create analogue mobile application for other cities, Bar and Baz. These mobile applications (products) would be almost identical to the one for the Foo city, thus the minisites for those would (should) look very similar too (except for some artwork and Foo => Bar replacement).

The question is: what do you think would be the most logical way to lay-out the website in this situation, both from the business and search engine perspective?

In other words, should I just duplicate the /foo/ website to /bar/ and /baz/, or would it be better to try to create a single website under root path (/)?

I don't want search engine penalties for almost-duplicate information under /foo/, /bar/ and /baz/, and also I don't want a messy, non-localized website (I guess the user is more likely to buy something if he/she sees "This-and-that is the application for NYC, the city you live in", not "This-and-that is the application for city A, city B, ..., NYC, ..., and city Z.")


Create one website at http://yoursite.com/ and serve the same template with different content based on the city they choose.

The homepage could welcome visitors and prompt them to choose a city or attempt to discover it automatically with the HTML5 geolocation API, then redirect them to http://yoursite.com/city Have a look at how other location-based services like Gowalla and Foursquare handle the user experience for first-timers.

Once the visitor's chosen their city, you'd load the city info into your template, changing the header, background, and city data as necessary.

This makes much more sense to me than attempting to manage a growing number of almost identical websites spread across multiple subdirectories with duplicate templates and stylesheets. Managing multiple sites as the number of cities you offer grows would be a pain. The whole point of a dynamic website is that it reduces your maintenance overhead by feeding dynamic data into one template, so take advantage of this.

Regarding duplicate content and search engines, simply make your content as unique as possible for each city, which shouldn't be hard for a city transport guide -- few cities offer identical services at identical times. You won't be penalised for using one template if the content itself is different.

| improve this answer | |
  • Agree fully with every point Nick raised, this is how I'd do it. – Anonymous Sep 27 '11 at 15:06

I'm going to start with an assumption that this is for smartphones, which have the ability to be found via gps. That being said, the best way would be to have one site and use that phones geolocation to load up the appropriate data. (EG, You'd have all of your data in your document root and you'd look up the necessary db entries based on that.)

However, let's now assume you can't do that. The best layout would be to use either subdomains or as you've suggested duplicating the website and having them under separate folders. Use a main stylesheet on the root domain to cut down on overall size. Or you can have 1 main site, where they initially select their city and it sets their session data to be for city xyz and you just query the db for the data for that particular city.

You shouldn't be getting hits on duplicate data though. Some of your content will be the same, but for that content, why not (and I loathe to even suggest this) throw it into an iframe or set a cookie to determine which city they were looking at and then you'll have to redirect them back to where they were supposed to be in the first place.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.