What is migration?
Migration allows an off-topic question to be gracefully moved to another site in the Stack Exchange network. It preserves the current revision of the question, all its answers, any comments on any post, as well as most of the votes.
When a question is migrated, a new copy of the question is posted on the destination site (the "destination question"), and the original question is demoted to "stub" status (see below).
Side effects of migration
The destination question's score is reset to zero if the origin question had a negative score. Otherwise, its score is retained, and the votes are attributed to the Community user.
- The original scores are preserved for the answers, with the votes (again) being attributed to the Community user.
If a user who participated in the question does not have an account on the target site, their username is displayed as plain text until they create an account.
Answers on the origin site are deleted immediately upon question migration. (This causes a reversal of all associated reputation on the origin site.) The answers will be visible on the destination question.
The question is left as a stub, or pathway to the new site, for 30 days, after which it is automatically deleted. (Again, this causes a reversal of all associated reputation on the origin site.) Note that the old link will continue to redirect to the new question even after that time.
When a post is migrated, the destination question will contain a notice saying that it was migrated and contain a link to the old (now stub) question's revision history. This will be publicly visible to <10k users even after the stub is deleted.
- On posts migrated from Meta Stack Exchange prior to the split from Meta Stack Overflow, the links to the revision history were not updated, so to see it you have to manually modify the URL to meta.stackexchange.com.
When can a question be migrated, and who can migrate it?
Only questions which are less than 60 days old can be migrated; this rule also applies to moderators.1
Any user with 3,000 reputation (250 if it's your own question) can vote to migrate a question to another site via a list of up to five sites, which are most relevant to that site. Simply load the close dialog, select the off-topic because close reason, and then select belongs on another site in the off-topic reason list. This will present the list of available migration targets.2
In order for the question to be migrated, at least three of the close votes (four on Stack Overflow) must be for migration to the same site. If the question reaches five close votes without this majority, the question will simply be closed for the next most-commonly selected reason. If the majority reason is for migration, but the majority votes are not all for the same site, the question will be closed as off-topic.
If you don't have 3,000 reputation, you may flag to migrate it just as you would cast a recommend closure flag. This would put the question into a queue for users with enough reputation to review and possibly cast votes.
If the site isn't in the list of available migration targets, or the question got closed without being migrated, first read the below points and consider if migration is/was really the appropriate action (in many cases, it isn't). If you think so, you can flag the question for moderator attention and request that they migrate it for you. Simply explain in the reason which site you want it to be migrated. (Please specify only one site; don't list all possible sites it could go to.)
Things to consider when migrating questions
Don't migrate crap! Ever. If the question is likely to be closed or deleted on the destination site anyway, don't bother migrating it. Just vote to close it normally and advise the OP of the other site in the comments. If they decide to improve the question, then they can go post it over there, or they can edit their question so it's on-topic on the original site.
Check for cross-posts. It may be possible, that after hearing about the other site, that the OP may cross-post their question onto the other site. Therefore, check the intended destination site for potential cross-posts before voting to migrate. If it has been cross-posted, vote to close it instead, as cross-posting is prohibited even if the question is on-topic on both sites.
Avoid migrating answered questions. The point of migration is to send the question to a place where it is on-topic and can get answered. If the OP already has an answer, then we've already defeated the purpose of migration and the destination site won't have anything to do with the question. Avoid migrating these questions unless they are of extremely good quality and risk deletion on their current site.
Don't migrate for the sake of migration. We only migrate questions because they are off-topic on the original site. It is perfectly possible for a question to be on-topic on multiple sites, but that is not a reason to migrate it elsewhere, unless the OP requests migration. As a general rule, if someone asks a question here, and it's on-topic here, it should stay here.
Be familiar with the destination site. If you are not familiar with the destination site, read through its about page and help center thoroughly and make sure the question actually belongs there. Don't just look at the name of a site and automatically assume that the question can be asked there. Each site has its own rules, and rules vary greatly across sites.
If you're not sure, don't vote to migrate it. Let someone else who is sure do that, just vote to close it as off-topic, or ask for opinions from the community in a relevant chat room.
What causes a migration to be rejected and what happens after?
A migration can be automatically rejected before it even gets migrated if any of the following conditions apply:
In this case, the question will just get closed as off-topic, and not migrated.
A question can also be rejected by the target community after it has already been migrated if it gets closed (except as a duplicate) or deleted on the target site. When a question which was already migrated gets rejected later, the entire process of the migration is reversed, except the original question will remain closed as off-topic. All the answers are returned to the origin site and undeleted* and are subsequently deleted on the target site. Also, the rejected question on the target site will be locked, then automatically deleted 30 days later.
*Note: If the question was already deleted on the origin site, even automatically as a migration stub, migration rejection does not cause the original question to be undeleted.
Anything else I should know about migration?
Comments on the question that link to the homepage of the target site will be deleted. This is to remove redundant comments that tell the author to post on that site.
Locking a question that has been migrated from another site will cause the "migration rejected" notice to show up on the question, regardless of whether or not the question is actually a rejected migration. Any other lock reason notice will be ignored, and the timestamp on the "migration rejected" notice will be the time it was locked.
Moderators have the ability to clear the migration history of a question if needed. This delinks the question from the migration stub on the origin site, and makes it act like it was just posted on the destination site in the first place. This is often used to prevent the question from being locked, or to prevent answers from being deleted, before closing it.
1 After 60 days, migrations can only be performed by Stack Exchange employees. These are performed only in very, very rare procedural cases and are usually not done on request.
2 Moderators may migrate to any site in the Stack Exchange network, including all meta sites, and aren't limited to just the five listed sites.